]> git.sur5r.net Git - cc65/blobdiff - cfg/apple2-system.cfg
Switched Apple II output format to AppleSingle.
[cc65] / cfg / apple2-system.cfg
index f4684d9c2f9e70bbff86970e317e6b62bac7a21d..0170feb93ab16dd34cee77af42c7ea4493c21f09 100644 (file)
@@ -1,18 +1,22 @@
-# Configuration for ProDOS 8 system programs (without the header)
+# Configuration for ProDOS 8 system programs (allowing for 3KB in LC)
 
 SYMBOLS {
+    __EXEHDR__:    type = import;
+    __FILETYPE__:  type = weak, value = $00FF; # ProDOS file type
     __STACKSIZE__: type = weak, value = $0800; # 2k stack
     __LCADDR__:    type = weak, value = $D400; # Behind quit code
     __LCSIZE__:    type = weak, value = $0C00; # Rest of bank two
 }
 MEMORY {
-    ZP:   file = "", define = yes, start = $0080,        size = $001A;
-    MAIN: file = %O,               start = $2000,        size = $BF00 - $2000;
-    BSS:  file = "",               start = __ONCE_RUN__, size = $BF00 - __STACKSIZE__ - __ONCE_RUN__;
-    LC:   file = "", define = yes, start = __LCADDR__,   size = __LCSIZE__;
+    ZP:     file = "", define = yes, start = $0080,         size = $001A;
+    HEADER: file = %O,               start = $2000 - $003A, size = $003A;
+    MAIN:   file = %O, define = yes, start = $2000,         size = $BF00 - $2000;
+    BSS:    file = "",               start = __ONCE_RUN__,  size = $BF00 - __STACKSIZE__ - __ONCE_RUN__;
+    LC:     file = "", define = yes, start = __LCADDR__,    size = __LCSIZE__;
 }
 SEGMENTS {
     ZEROPAGE: load = ZP,             type = zp;
+    EXEHDR:   load = HEADER,         type = ro,  optional = yes;
     STARTUP:  load = MAIN,           type = ro;
     LOWCODE:  load = MAIN,           type = ro,  optional = yes;
     CODE:     load = MAIN,           type = ro;