]> git.sur5r.net Git - cc65/blob - src/ld65/cfg/atari.cfg
d275896b21de70b8d70579ee1fc4cf5233d819bb
[cc65] / src / ld65 / cfg / atari.cfg
1 FEATURES {
2     STARTADDRESS: default = $2E00;
3 }
4 SYMBOLS {
5     __STACKSIZE__:       type = weak, value = $0800; # 2k stack
6     __RESERVED_MEMORY__: type = weak, value = $0000;
7 }
8 MEMORY {
9     ZP:      file = "", define = yes, start = $0082, size = $007E;
10     HEADER:  file = %O,               start = $0000, size = $0006;
11     RAM:     file = %O,               start = %S,    size = $BC20 - __STACKSIZE__ - %S;
12     TRAILER: file = %O,               start = $0000, size = $0006;
13 }
14 SEGMENTS {
15     EXEHDR:   load = HEADER,  type = ro;
16     STARTUP:  load = RAM,     type = ro,  define = yes;
17     LOWCODE:  load = RAM,     type = ro,  define = yes, optional = yes;
18     INIT:     load = RAM,     type = ro,                optional = yes;
19     CODE:     load = RAM,     type = ro,  define = yes;
20     RODATA:   load = RAM,     type = ro;
21     DATA:     load = RAM,     type = rw;
22     ZPSAVE:   load = RAM,     type = bss, define = yes;
23     BSS:      load = RAM,     type = bss, define = yes;
24     ZEROPAGE: load = ZP,      type = zp;
25     EXTZP:    load = ZP,      type = zp,                optional = yes;
26     AUTOSTRT: load = TRAILER, type = ro;
27 }
28 FEATURES {
29     CONDES: segment = INIT,
30             type    = constructor,
31             label   = __CONSTRUCTOR_TABLE__,
32             count   = __CONSTRUCTOR_COUNT__;
33     CONDES: segment = RODATA,
34             type    = destructor,
35             label   = __DESTRUCTOR_TABLE__,
36             count   = __DESTRUCTOR_COUNT__;
37     CONDES: segment = RODATA,
38             type    = interruptor,
39             label   = __INTERRUPTOR_TABLE__,
40             count   = __INTERRUPTOR_COUNT__,
41             import  = __CALLIRQ__;
42 }