2 STARTADDRESS: default = $2000;
5 __CARTSIZE__: type = weak, value = $2000; # possible values: $2000 and $4000
6 __CART_HEADER__: type = import;
7 __STACKSIZE__: type = weak, value = $0800; # 2k stack
8 __STARTADDRESS__: type = export, value = %S;
9 __RESERVED_MEMORY__: type = export, value = $0000;
10 __CARTFLAGS__: type = weak, value = $01; # see documentation for other possible values
13 ZP: file = "", define = yes, start = $0082, size = $007E;
14 MAIN: file = "", define = yes, start = %S, size = __CARTSIZE__;
15 ROM: file = %O, define = yes, start = $C000 - __CARTSIZE__, size = __CARTSIZE__ - 6, fill = yes, fillval = $FF;
16 CARTID: file = %O, start = $BFFA, size = $0006;
17 DISCARD: file = "", start = $0100, size = $FF00;
20 ZEROPAGE: load = ZP, type = zp, optional = yes;
21 EXTZP: load = ZP, type = zp, optional = yes;
22 STARTUP: load = ROM, type = ro, define = yes, optional = yes;
23 LOWBSS: load = DISCARD, run = MAIN, type = rw, optional = yes; # not zero-initialized
24 LOWCODE: load = ROM, type = ro, define = yes, optional = yes;
25 ONCE: load = ROM, type = ro, optional = yes;
26 CODE: load = ROM, type = ro, define = yes;
27 RODATA: load = ROM, type = ro, optional = yes;
28 DATA: load = ROM, run = MAIN, type = rw, define = yes, optional = yes;
29 INIT: load = MAIN, type = bss, optional = yes;
30 BSS: load = MAIN, type = bss, define = yes, optional = yes;
31 CARTHDR: load = CARTID, type = ro;
34 CONDES: type = constructor,
35 label = __CONSTRUCTOR_TABLE__,
36 count = __CONSTRUCTOR_COUNT__,
38 CONDES: type = destructor,
39 label = __DESTRUCTOR_TABLE__,
40 count = __DESTRUCTOR_COUNT__,
42 CONDES: type = interruptor,
43 label = __INTERRUPTOR_TABLE__,
44 count = __INTERRUPTOR_COUNT__,