diff --git a/src/ld65/cfg/apple2-dos33.cfg b/src/ld65/cfg/apple2-dos33.cfg deleted file mode 100644 index 644b0cc41..000000000 --- a/src/ld65/cfg/apple2-dos33.cfg +++ /dev/null @@ -1,46 +0,0 @@ -# Configuration optimized for DOS 3.3 by allowing for 12KB of HIGHCODE - -FEATURES { - STARTADDRESS: default = $0803; -} -SYMBOLS { - __EXEHDR__: type = import; - __STACKSIZE__: type = weak, value = $0800; # 2k stack - __LOADADDR__: type = weak, value = __RAM_START__; - __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + - __MOVE_LAST__ - __MOVE_START__; -} -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 = $D000, size = $3000; -} -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__; -} diff --git a/src/ld65/cfg/apple2-loader.cfg b/src/ld65/cfg/apple2-loader.cfg index 8cf2b43f5..4547f59d4 100644 --- a/src/ld65/cfg/apple2-loader.cfg +++ b/src/ld65/cfg/apple2-loader.cfg @@ -5,17 +5,19 @@ FEATURES { } SYMBOLS { __EXEHDR__: type = import; + __LCADDR__: type = weak, value = $D400; # Behind quit code + __LCSIZE__: type = weak, value = $0C00; # Rest of bank two __STACKSIZE__: type = weak, value = $0800; # 2k stack __LOADADDR__: type = weak, value = __RAM_START__; __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + __MOVE_LAST__ - __MOVE_START__; } MEMORY { - ZP: file = "", define = yes, start = $0080, size = $001A; - HEADER: file = %O, start = $0000, size = $0004; - RAM: file = %O, define = yes, start = %S, size = $BF00 - __STACKSIZE__ - %S; - MOVE: file = %O, define = yes, start = $0000, size = $FFFF; - LC: define = yes, start = $D400, size = $0C00; + ZP: file = "", define = yes, start = $0080, size = $001A; + HEADER: file = %O, start = $0000, size = $0004; + RAM: file = %O, define = yes, start = %S, size = $BF00 - __STACKSIZE__ - %S; + MOVE: file = %O, define = yes, start = $0000, size = $FFFF; + LC: define = yes, start = __LCADDR__, size = __LCSIZE__; } SEGMENTS { ZEROPAGE: load = ZP, type = zp; diff --git a/src/ld65/cfg/apple2-reboot.cfg b/src/ld65/cfg/apple2-reboot.cfg deleted file mode 100644 index e10b0debb..000000000 --- a/src/ld65/cfg/apple2-reboot.cfg +++ /dev/null @@ -1,47 +0,0 @@ -# Configuration allowing for 4KB of HIGHCODE optimized for programs -# loaded with LOADER.SYSTEM and calling rebootafterexit() - -FEATURES { - STARTADDRESS: default = $0800; -} -SYMBOLS { - __EXEHDR__: type = import; - __STACKSIZE__: type = weak, value = $0800; # 2k stack - __LOADADDR__: type = weak, value = __RAM_START__; - __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + - __MOVE_LAST__ - __MOVE_START__; -} -MEMORY { - ZP: file = "", define = yes, start = $0080, size = $001A; - HEADER: file = %O, start = $0000, size = $0004; - RAM: file = %O, define = yes, start = %S, size = $BF00 - __STACKSIZE__ - %S; - MOVE: file = %O, define = yes, start = $0000, size = $FFFF; - LC: define = yes, start = $D000, size = $1000; -} -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__; -} diff --git a/src/ld65/cfg/apple2-system.cfg b/src/ld65/cfg/apple2-system.cfg index 51397f096..35a7cfa21 100644 --- a/src/ld65/cfg/apple2-system.cfg +++ b/src/ld65/cfg/apple2-system.cfg @@ -2,17 +2,19 @@ SYMBOLS { __EXEHDR__: type = import; + __LCADDR__: type = weak, value = $D400; # Behind quit code + __LCSIZE__: type = weak, value = $0C00; # Rest of bank two __STACKSIZE__: type = weak, value = $0800; # 2k stack __LOADADDR__: type = weak, value = __RAM_START__; __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + __MOVE_LAST__ - __MOVE_START__; } MEMORY { - ZP: file = "", define = yes, start = $0080, size = $001A; - HEADER: file = "", start = $0000, size = $0004; - RAM: file = %O, define = yes, start = $2000, size = $9F00 - __STACKSIZE__; - MOVE: file = %O, define = yes, start = $0000, size = $FFFF; - LC: define = yes, start = $D400, size = $0C00; + ZP: file = "", define = yes, start = $0080, size = $001A; + HEADER: file = "", start = $0000, size = $0004; + RAM: file = %O, define = yes, start = $2000, size = $9F00 - __STACKSIZE__; + MOVE: file = %O, define = yes, start = $0000, size = $FFFF; + LC: define = yes, start = __LCADDR__, size = __LCSIZE__; } SEGMENTS { ZEROPAGE: load = ZP, type = zp; diff --git a/src/ld65/cfg/apple2.cfg b/src/ld65/cfg/apple2.cfg index 16f6428ce..cef8c3b60 100644 --- a/src/ld65/cfg/apple2.cfg +++ b/src/ld65/cfg/apple2.cfg @@ -5,17 +5,19 @@ FEATURES { } SYMBOLS { __EXEHDR__: type = import; + __LCADDR__: type = weak, value = $D400; # Behind quit code + __LCSIZE__: type = weak, value = $0C00; # Rest of bank two __STACKSIZE__: type = weak, value = $0800; # 2k stack __LOADADDR__: type = weak, value = __RAM_START__; __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + __MOVE_LAST__ - __MOVE_START__; } 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; + 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 = __LCADDR__, size = __LCSIZE__; } SEGMENTS { ZEROPAGE: load = ZP, type = zp; diff --git a/src/ld65/cfg/apple2enh-dos33.cfg b/src/ld65/cfg/apple2enh-dos33.cfg deleted file mode 100644 index 644b0cc41..000000000 --- a/src/ld65/cfg/apple2enh-dos33.cfg +++ /dev/null @@ -1,46 +0,0 @@ -# Configuration optimized for DOS 3.3 by allowing for 12KB of HIGHCODE - -FEATURES { - STARTADDRESS: default = $0803; -} -SYMBOLS { - __EXEHDR__: type = import; - __STACKSIZE__: type = weak, value = $0800; # 2k stack - __LOADADDR__: type = weak, value = __RAM_START__; - __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + - __MOVE_LAST__ - __MOVE_START__; -} -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 = $D000, size = $3000; -} -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__; -} diff --git a/src/ld65/cfg/apple2enh-loader.cfg b/src/ld65/cfg/apple2enh-loader.cfg index 8cf2b43f5..4547f59d4 100644 --- a/src/ld65/cfg/apple2enh-loader.cfg +++ b/src/ld65/cfg/apple2enh-loader.cfg @@ -5,17 +5,19 @@ FEATURES { } SYMBOLS { __EXEHDR__: type = import; + __LCADDR__: type = weak, value = $D400; # Behind quit code + __LCSIZE__: type = weak, value = $0C00; # Rest of bank two __STACKSIZE__: type = weak, value = $0800; # 2k stack __LOADADDR__: type = weak, value = __RAM_START__; __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + __MOVE_LAST__ - __MOVE_START__; } MEMORY { - ZP: file = "", define = yes, start = $0080, size = $001A; - HEADER: file = %O, start = $0000, size = $0004; - RAM: file = %O, define = yes, start = %S, size = $BF00 - __STACKSIZE__ - %S; - MOVE: file = %O, define = yes, start = $0000, size = $FFFF; - LC: define = yes, start = $D400, size = $0C00; + ZP: file = "", define = yes, start = $0080, size = $001A; + HEADER: file = %O, start = $0000, size = $0004; + RAM: file = %O, define = yes, start = %S, size = $BF00 - __STACKSIZE__ - %S; + MOVE: file = %O, define = yes, start = $0000, size = $FFFF; + LC: define = yes, start = __LCADDR__, size = __LCSIZE__; } SEGMENTS { ZEROPAGE: load = ZP, type = zp; diff --git a/src/ld65/cfg/apple2enh-reboot.cfg b/src/ld65/cfg/apple2enh-reboot.cfg deleted file mode 100644 index e10b0debb..000000000 --- a/src/ld65/cfg/apple2enh-reboot.cfg +++ /dev/null @@ -1,47 +0,0 @@ -# Configuration allowing for 4KB of HIGHCODE optimized for programs -# loaded with LOADER.SYSTEM and calling rebootafterexit() - -FEATURES { - STARTADDRESS: default = $0800; -} -SYMBOLS { - __EXEHDR__: type = import; - __STACKSIZE__: type = weak, value = $0800; # 2k stack - __LOADADDR__: type = weak, value = __RAM_START__; - __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + - __MOVE_LAST__ - __MOVE_START__; -} -MEMORY { - ZP: file = "", define = yes, start = $0080, size = $001A; - HEADER: file = %O, start = $0000, size = $0004; - RAM: file = %O, define = yes, start = %S, size = $BF00 - __STACKSIZE__ - %S; - MOVE: file = %O, define = yes, start = $0000, size = $FFFF; - LC: define = yes, start = $D000, size = $1000; -} -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__; -} diff --git a/src/ld65/cfg/apple2enh-system.cfg b/src/ld65/cfg/apple2enh-system.cfg index 51397f096..35a7cfa21 100644 --- a/src/ld65/cfg/apple2enh-system.cfg +++ b/src/ld65/cfg/apple2enh-system.cfg @@ -2,17 +2,19 @@ SYMBOLS { __EXEHDR__: type = import; + __LCADDR__: type = weak, value = $D400; # Behind quit code + __LCSIZE__: type = weak, value = $0C00; # Rest of bank two __STACKSIZE__: type = weak, value = $0800; # 2k stack __LOADADDR__: type = weak, value = __RAM_START__; __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + __MOVE_LAST__ - __MOVE_START__; } MEMORY { - ZP: file = "", define = yes, start = $0080, size = $001A; - HEADER: file = "", start = $0000, size = $0004; - RAM: file = %O, define = yes, start = $2000, size = $9F00 - __STACKSIZE__; - MOVE: file = %O, define = yes, start = $0000, size = $FFFF; - LC: define = yes, start = $D400, size = $0C00; + ZP: file = "", define = yes, start = $0080, size = $001A; + HEADER: file = "", start = $0000, size = $0004; + RAM: file = %O, define = yes, start = $2000, size = $9F00 - __STACKSIZE__; + MOVE: file = %O, define = yes, start = $0000, size = $FFFF; + LC: define = yes, start = __LCADDR__, size = __LCSIZE__; } SEGMENTS { ZEROPAGE: load = ZP, type = zp; diff --git a/src/ld65/cfg/apple2enh.cfg b/src/ld65/cfg/apple2enh.cfg index 16f6428ce..cef8c3b60 100644 --- a/src/ld65/cfg/apple2enh.cfg +++ b/src/ld65/cfg/apple2enh.cfg @@ -5,17 +5,19 @@ FEATURES { } SYMBOLS { __EXEHDR__: type = import; + __LCADDR__: type = weak, value = $D400; # Behind quit code + __LCSIZE__: type = weak, value = $0C00; # Rest of bank two __STACKSIZE__: type = weak, value = $0800; # 2k stack __LOADADDR__: type = weak, value = __RAM_START__; __LOADSIZE__: type = weak, value = __ZPSAVE_RUN__ - __RAM_START__ + __MOVE_LAST__ - __MOVE_START__; } 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; + 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 = __LCADDR__, size = __LCSIZE__; } SEGMENTS { ZEROPAGE: load = ZP, type = zp;