Commodore 64

Revision as of 15:05, 21 January 2025 by Hugova (talk | contribs)

Comodore64 är kort och gott en dator från 80-talet. Just nu har den en diskemulator för BASIC och .prg program. I katalogen /Dickander så finns några basic program och inom /duuvik samt /hugova så finns program skrivna i ASSEMBLY!

Emulering och compilering

Vi har främst använt emulatorn VICE den finns som flatpack (finns även på windows och mac) för emulering, och compilatorn cc65. Här är ett exempel på hur man skriver assembly till datorn.

Skapa en fil source.s med innehållet

lda #$00  
sta $d020 
loop: jmp loop 

Koden sparar värdet 00000000 00000000 på platsen i hexadecimal d020 i ram. Detta gör ramen svart! Sedan fastnar programmet i än oändlig loop sådant att BASIC inte kan ta över och ändra tillbaka färgen!

VICE emulator image.img.png

Sedan kan du compilera programmet med cc65 compilatorn och köra programmet i VICE med bash comandot

 killall x64sc ; cl65 -o file.prg -u __EXEHDR__ -t c64 -C c64-asm.cfg source.s && nohup flatpak run net.sf.VICE -windowypos 0 -windowxpos 960 -windowwidth 945 -windowheight 720 file.prg  </dev/null &>/dev/null &

Du kan debuga VICE genom att klicka 'File --> Activate monitor'

Om du vill köra din kod på den faktiska burken, flytta över file.prg till en katalog med ditt stackenanvändarnamn på comadoren sd-kort.

Här är en mängd resurser för hur hårdvaran fungerar!

cc65 kompilatorn [1]

Comodore 64 Wiki [2]

ASEMBLY 6502 instruction set: good (expansive)[3] wikipedia (minimalistic) [4]


sprites [5]

sprite multiplex [6]

sprite multiplex x2 [7]

Documentation of the vic chip: text [8] vic [9]

Holding hand instructions : codeburst hard asembly code [10] flag intro [11] peek and poke [12]

Cool unexplored tools (text)[13]