]> git.sur5r.net Git - cc65/blob - src/ld65/cfg/apple2-dos33.cfg
Made stacksize user-adjustable on the cmdline.
[cc65] / src / ld65 / cfg / apple2-dos33.cfg
1 # Configuration optimized for DOS 3.3 by allowing for 12KB of HIGHCODE
2  
3 FEATURES {
4     STARTADDRESS: default = $0803;
5 }
6 MEMORY {
7     ZP:     start = $0080, size = $001A,                 define = yes;
8     HEADER: start = $0000, size = $0004,      file = %O;
9     RAM:    start = %S,    size = $9600 - %S, file = %O, define = yes;
10     MOVE:   start = $0000, size = $FFFF,      file = %O, define = yes;
11     LC:     start = $D000, size = $3000,                 define = yes;
12 }
13 SEGMENTS {
14     ZEROPAGE: load = ZP,              type = zp;
15     EXEHDR:   load = HEADER,          type = ro;
16     STARTUP:  load = RAM,             type = ro;
17     LOWCODE:  load = RAM,             type = ro;
18     CODE:     load = RAM,             type = ro;
19     RODATA:   load = RAM,             type = ro;
20     DATA:     load = RAM,             type = rw;
21     ZPSAVE:   load = RAM,             type = bss, define   = yes;
22     BSS:      load = RAM,             type = bss, define   = yes;
23     INIT:     load = MOVE, run = RAM, type = ro,  define   = yes;
24     HIGHCODE: load = MOVE, run = LC,  type = ro,  optional = yes;
25 }
26 FEATURES {
27     CONDES: segment = INIT,
28             type    = constructor,
29             label   = __CONSTRUCTOR_TABLE__,
30             count   = __CONSTRUCTOR_COUNT__;
31     CONDES: segment = RODATA,
32             type    = destructor,
33             label   = __DESTRUCTOR_TABLE__,
34             count   = __DESTRUCTOR_COUNT__;
35     CONDES: type    = interruptor,
36             segment = RODATA,
37             label   = __INTERRUPTOR_TABLE__,
38             count   = __INTERRUPTOR_COUNT__;
39 }
40 SYMBOLS {
41     __STACKSIZE__: value = $0800, weak = yes; # 2k stack
42 }