1 # supervision 16kbyte cartridge
4 # ld65 --config supervision16.cfg -o <prog>.bin <prog>.o
6 ZP: start = $0000, size = $0100;
7 CPUSTACK: start = $0100, size = $0100;
8 RAM: start = $0200, size = $1E00;
9 VRAM: start = $4000, size = $2000;
10 ROM: start = $C000, size = $4000, fill = yes, fillval = $ff, file=%O, define=yes;
14 LOWCODE: load = ROM, type = ro, optional = yes;
15 INIT: load = ROM, type = ro, define = yes, optional = yes;
16 CODE: load = ROM, type = ro, define = yes;
17 RODATA: load = ROM, type = ro, define = yes;
18 DATA: load = ROM, run = RAM, type = rw, define = yes;
19 FFF0: load = ROM, type = ro, offset = $3FF0;
20 VECTOR: load = ROM, type = ro, offset = $3FFA;
21 BSS: load = RAM, type = bss, define = yes;
22 HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
23 ZEROPAGE: load = ZP, type = zp, define = yes;
26 CONDES: segment = INIT,
28 label = __CONSTRUCTOR_TABLE__,
29 count = __CONSTRUCTOR_COUNT__;
30 CONDES: segment = RODATA,
32 label = __DESTRUCTOR_TABLE__,
33 count = __DESTRUCTOR_COUNT__;
34 CONDES: type = interruptor,
36 label = __INTERRUPTOR_TABLE__,
37 count = __INTERRUPTOR_COUNT__;