]> git.sur5r.net Git - cc65/blobdiff - cfg/atari-cart.cfg
Merge pull request #587 from polluks/master
[cc65] / cfg / atari-cart.cfg
index 58457c60678b07a64deb0413bd11481926bb287d..31d2cb1b97ec93a9554a14c666b9148d6318db15 100644 (file)
@@ -10,29 +10,29 @@ SYMBOLS {
     __CARTFLAGS__:       type = weak,   value = $01;   # see documentation for other possible values
 }
 MEMORY {
-    ZP:         file = "", define = yes, start = $0082,                size = $007E;
-    RAM:        file = "", define = yes, start = %S,                   size = __CARTSIZE__;
-    ROM:        file = %O, define = yes, start = $C000 - __CARTSIZE__, size = __CARTSIZE__ - 6, fill = yes, fillval = $FF;
-    CARTID:     file = %O,               start = $BFFA,                size = $0006;
+    ZP:     file = "", define = yes, start = $0082,                size = $007E;
+    MAIN:   file = "", define = yes, start = %S,                   size = __CARTSIZE__;
+    ROM:    file = %O, define = yes, start = $C000 - __CARTSIZE__, size = __CARTSIZE__ - 6, fill = yes, fillval = $FF;
+    CARTID: file = %O,               start = $BFFA,                size = $0006;
 }
 SEGMENTS {
-    STARTUP:   load = ROM,            type = ro,  define = yes, optional = yes;
-    LOWCODE:   load = ROM,            type = ro,  define = yes, optional = yes;
-    INIT:      load = ROM,            type = ro,                optional = yes;
-    CODE:      load = ROM,            type = ro,  define = yes;
-    RODATA:    load = ROM,            type = ro,                optional = yes;
-    DATA:      load = ROM, run = RAM, type = rw,  define = yes, optional = yes;
-    INITBSS:   load = RAM,            type = bss,               optional = yes;
-    BSS:       load = RAM,            type = bss, define = yes, optional = yes;
-    CARTHDR:   load = CARTID,         type = ro;
-    ZEROPAGE:  load = ZP,             type = zp,                optional = yes;
-    EXTZP:     load = ZP,             type = zp,                optional = yes;
+    ZEROPAGE: load = ZP,              type = zp,                optional = yes;
+    EXTZP:    load = ZP,              type = zp,                optional = yes;
+    STARTUP:  load = ROM,             type = ro,  define = yes, optional = yes;
+    LOWCODE:  load = ROM,             type = ro,  define = yes, optional = yes;
+    ONCE:     load = ROM,             type = ro,                optional = yes;
+    CODE:     load = ROM,             type = ro,  define = yes;
+    RODATA:   load = ROM,             type = ro,                optional = yes;
+    DATA:     load = ROM, run = MAIN, type = rw,  define = yes, optional = yes;
+    INIT:     load = MAIN,            type = bss,               optional = yes;
+    BSS:      load = MAIN,            type = bss, define = yes, optional = yes;
+    CARTHDR:  load = CARTID,          type = ro;
 }
 FEATURES {
     CONDES: type    = constructor,
             label   = __CONSTRUCTOR_TABLE__,
             count   = __CONSTRUCTOR_COUNT__,
-            segment = INIT;
+            segment = ONCE;
     CONDES: type    = destructor,
             label   = __DESTRUCTOR_TABLE__,
             count   = __DESTRUCTOR_COUNT__,