osd-contiki/platform/c64/linker.cfg
2007-11-27 12:24:03 +00:00

40 lines
1.3 KiB
INI

# This file should be identical to the file '<cc65>/doc/c64.cfg' with the
# following exception:
# - Reduced stacksize: Contiki is designed to use extremely little stack.
# The applications coming with Contiki run even with a $100 byte stack.
MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $07FF, size = $C801, file = %O, define = yes;
}
SEGMENTS {
STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw;
BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp;
}
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__;
}
SYMBOLS {
__STACKSIZE__ = $200; # 1/2K instead of 2K stack
}