]> git.sur5r.net Git - cc65/blob - src/ld65/cfg/atari.cfg
set RAM start address to %S; add STARTADDRESS
[cc65] / src / ld65 / cfg / atari.cfg
1 FEATURES {
2     STARTADDRESS: default = $2E00;
3 }
4 MEMORY {
5     ZP:     start = $0082, size = $007E, type = rw, define = yes;
6     HEADER: start = $0000, size = $0006, file = %O;
7     RAM:    start = %S,    size = $8E20, file = %O;     # $8E20: matches upper bound $BC1F for 
8                                                         # the default start address of $2E00
9 }
10 SEGMENTS {
11     EXEHDR:   load = HEADER, type = ro;
12     LOWCODE:  load = RAM,    type = ro, define = yes, optional = yes;
13     INIT:     load = RAM,    type = ro,               optional = yes;
14     CODE:     load = RAM,    type = ro;
15     RODATA:   load = RAM,    type = ro;
16     DATA:     load = RAM,    type = rw;
17     BSS:      load = RAM,    type = bss, define = yes;
18     HEAP:     load = RAM,    type = bss, optional = yes; # must sit just below stack
19     ZEROPAGE: load = ZP,     type = zp;
20     EXTZP:    load = ZP,     type = zp,               optional = yes;
21     AUTOSTRT: load = RAM,    type = ro;
22 }
23 FEATURES {
24     CONDES: segment = INIT,
25             type = constructor,
26             label = __CONSTRUCTOR_TABLE__,
27             count = __CONSTRUCTOR_COUNT__;
28     CONDES: segment = RODATA,
29             type = destructor,
30             label = __DESTRUCTOR_TABLE__,
31             count = __DESTRUCTOR_COUNT__;
32     CONDES: type = interruptor,
33             segment = RODATA,
34             label = __INTERRUPTOR_TABLE__,
35             count = __INTERRUPTOR_COUNT__;
36 }
37 SYMBOLS {
38     __STACKSIZE__ = $800;       # 2K stack
39 }