; Commodore 64 ; assuming a program loaded from disk or tape [compilation] ; CPU architecture: nmos, strictnmos, ricoh, strictricoh, cmos arch=nmos ; modules to load modules=c64_hardware,loader_0801,c64_kernal,stdlib ; optionally: default flags emit_illegals=true [allocation] ; where the main function should be allocated, also the start of bank 0 main_org=$80D ; list of free zp pointer locations (these assume that BASIC will keep working) zp_pointers=$C1,$C3,$FB,$FD,$39,$3B,$3D,$43,$4B ; where to allocate non-zp variables himem_style=per_bank himem_start=after_code himem_end=$9FFF [output] ; how the banks are laid out in the output files; so far, there is no bank support in the compiler yet style=per_bank ; output file format ; startaddr - little-endian address of the first used byte in the bank ; endaddr - little-endian address of the last used byte in the bank ; allocated - all used bytes in the bank ; : - bytes from the current bank ; :addr>: - bytes from arbitrary bank ; - single byte format=startaddr,allocated ; default output file extension extension=prg