]> git.sur5r.net Git - cc65/blobdiff - src/ld65/cfg/cbm510.cfg
Made stacksize user-adjustable on the cmdline.
[cc65] / src / ld65 / cfg / cbm510.cfg
index 46e977350d6c853b05cbb293757756e055e587b6..5bbd75540f9a0fe720e6eeee75ecfb981354948f 100644 (file)
@@ -1,28 +1,30 @@
 MEMORY {
-    BASICHDR: start = $01, size = $50, type = rw, fill = yes, fillval = 0, file = %O;
-    ZP: start = $51, size = $A6, type = rw, define = yes, fill = yes, fillval = 0, file = %O;
-    STARTUP: start = $00F7, size = $109, fill = yes, fillval = 0, file = %O;
-    PAGE2:   start = $0200, size = $100, fill = yes, fillval = 0, file = %O;
-    PAGE3:   start = $0300, size = $100, fill = yes, fillval = 0, file = %O;
-    RAM:     start = $0400, size = $DC00, file = %O;
-    CHARRAM: start = $E000, size = $1000, define = yes, file = "";
-    VIDRAM:  start = $F000, size = $0400, define = yes, file = "";
+    BASICHDR: start = $0001, size = $0050, fill = yes, fillval = 0, type = rw, file = %O;
+    ZP:       start = $0051, size = $00AD, fill = yes, fillval = 0, type = rw, file = %O, define = yes;
+    STARTUP:  start = $00FE, size = $0102, fill = yes, fillval = 0, file = %O;
+    PAGE2:    start = $0200, size = $0100, fill = yes, fillval = 0, file = %O;
+    PAGE3:    start = $0300, size = $0100, fill = yes, fillval = 0, file = %O;
+    RAM:      start = $0400, size = $DC00, file = %O;
+    CHARRAM:  start = $E000, size = $1000, define = yes, file = "";
+    VIDRAM:   start = $F000, size = $0400, define = yes, file = "";
 }
 SEGMENTS {
     BASICHDR: load = BASICHDR, type = rw;
     STARTUP:  load = STARTUP,  type = rw;
     PAGE2:    load = PAGE2,    type = rw;
     PAGE3:    load = PAGE3,    type = rw;
-    LOWCODE:  load = RAM,      type = ro, optional = yes;
+    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;
-    EXTZP:    load = ZP,       type = rw, define = yes;
+    EXTZP:    load = ZP,       type = rw,  define = yes;
 }
 FEATURES {
-    CONDES: segment = RODATA,
+    CONDES: segment = INIT,
            type = constructor,
            label = __CONSTRUCTOR_TABLE__,
            count = __CONSTRUCTOR_COUNT__;
@@ -36,5 +38,5 @@ FEATURES {
            count = __INTERRUPTOR_COUNT__;
 }
 SYMBOLS {
-    __STACKSIZE__ = $781;              # ~2K stack
+    __STACKSIZE__: value = $0781, weak = yes; # ~2k stack
 }