segments and aren't written to the output file. Before that, the "not going to output file" was implicit because of the bss type of the segments contained. The new attribute makes this explicit. git-svn-id: svn://svn.cc65.org/cc65/trunk@4853 b7a2c559-68d2-44c3-8de9-860c34a00d81
43 lines
1.6 KiB
INI
43 lines
1.6 KiB
INI
# Default configuration built into ld65 (allowing for 3KB of HIGHCODE)
|
|
|
|
FEATURES {
|
|
STARTADDRESS: default = $0803;
|
|
}
|
|
SYMBOLS {
|
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
|
}
|
|
MEMORY {
|
|
ZP: file = "", define = yes, start = $0080, size = $001A;
|
|
HEADER: file = %O, start = $0000, size = $0004;
|
|
RAM: file = %O, define = yes, start = %S, size = $9600 - __STACKSIZE__ - %S;
|
|
MOVE: file = %O, define = yes, start = $0000, size = $FFFF;
|
|
LC: define = yes, start = $D400, size = $0C00;
|
|
}
|
|
SEGMENTS {
|
|
ZEROPAGE: load = ZP, type = zp;
|
|
EXEHDR: load = HEADER, type = ro;
|
|
STARTUP: load = RAM, type = ro;
|
|
LOWCODE: load = RAM, type = ro;
|
|
CODE: load = RAM, type = ro;
|
|
RODATA: load = RAM, type = ro;
|
|
DATA: load = RAM, type = rw;
|
|
ZPSAVE: load = RAM, type = bss, define = yes;
|
|
BSS: load = RAM, type = bss, define = yes;
|
|
INIT: load = MOVE, run = RAM, type = ro, define = yes;
|
|
HIGHCODE: load = MOVE, run = LC, type = ro, optional = yes;
|
|
}
|
|
FEATURES {
|
|
CONDES: segment = INIT,
|
|
type = constructor,
|
|
label = __CONSTRUCTOR_TABLE__,
|
|
count = __CONSTRUCTOR_COUNT__;
|
|
CONDES: segment = RODATA,
|
|
type = destructor,
|
|
label = __DESTRUCTOR_TABLE__,
|
|
count = __DESTRUCTOR_COUNT__;
|
|
CONDES: segment = RODATA,
|
|
type = interruptor,
|
|
label = __INTERRUPTOR_TABLE__,
|
|
count = __INTERRUPTOR_COUNT__;
|
|
}
|