X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fld65%2Fcfg%2Fc64.cfg;h=dce9263c35e573c872b0a7fdec63556652dfad6e;hb=7aefd9b4e7b67908b7b3c38b6003c7f1a8d3ee2d;hp=91809c1ffe829ee4a67390f9a6a0485790fd1cfe;hpb=60bc009991eb11e5f963f2a579e7c441fa8b1ece;p=cc65 diff --git a/src/ld65/cfg/c64.cfg b/src/ld65/cfg/c64.cfg index 91809c1ff..dce9263c3 100644 --- a/src/ld65/cfg/c64.cfg +++ b/src/ld65/cfg/c64.cfg @@ -1,36 +1,38 @@ +SYMBOLS { + __LOADADDR__: type = import; + __EXEHDR__: type = import; + __STACKSIZE__: type = weak, value = $0800; # 2k stack +} MEMORY { - ZP: start = $0002, size = $001A, type = rw, define = yes; - RAM: start = $07FF, size = $C801, file = %O, define = yes; + ZP: file = "", define = yes, start = $0002, size = $001A; + LOADADDR: file = %O, start = $07FF, size = $0002; + HEADER: file = %O, start = $0801, size = $000C; + RAM: file = %O, define = yes, start = $080D, size = $C7F3 - __STACKSIZE__; } SEGMENTS { - EXEHDR: load = RAM, type = ro; - 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; - ZPSAVE: load = RAM, type = bss; - BSS: load = RAM, type = bss, define = yes; - HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack - ZEROPAGE: load = ZP, type = zp; + LOADADDR: load = LOADADDR, type = ro; + EXEHDR: load = HEADER, type = ro; + 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; + ZPSAVE: load = RAM, type = bss; + BSS: load = RAM, type = bss, define = yes; + ZEROPAGE: load = ZP, type = zp; } FEATURES { CONDES: segment = INIT, - type = constructor, - label = __CONSTRUCTOR_TABLE__, - count = __CONSTRUCTOR_COUNT__; + type = constructor, + label = __CONSTRUCTOR_TABLE__, + count = __CONSTRUCTOR_COUNT__; CONDES: segment = RODATA, - type = destructor, - label = __DESTRUCTOR_TABLE__, - count = __DESTRUCTOR_COUNT__; + type = destructor, + label = __DESTRUCTOR_TABLE__, + count = __DESTRUCTOR_COUNT__; CONDES: segment = RODATA, - type = interruptor, - label = __INTERRUPTOR_TABLE__, - count = __INTERRUPTOR_COUNT__; -} -SYMBOLS { - __STACKSIZE__: value = $0800, weak = yes; # 2k stack + type = interruptor, + label = __INTERRUPTOR_TABLE__, + count = __INTERRUPTOR_COUNT__; } - -