]> git.sur5r.net Git - cc65/blob - src/ld65/cfg/cbm610.cfg
497969e1e90c408a322b272ef7fdca99da551cbd
[cc65] / src / ld65 / cfg / cbm610.cfg
1 MEMORY {
2     BASICHDR: start = $0001, size = $0050, type = rw, fill = yes, fillval = 0, file = %O;
3     ZP:       start = $0051, size = $00AD, type = rw, define = yes, fill = yes, fillval = 0, file = %O;
4     STARTUP:  start = $00FE, size = $0102, fill = yes, fillval = 0, file = %O;
5     PAGE2:    start = $0200, size = $0100, fill = yes, fillval = 0, file = %O;
6     PAGE3:    start = $0300, size = $0100, fill = yes, fillval = 0, file = %O;
7     RAM:      start = $0400, size = $FAAE, file = %O;
8 }
9 SEGMENTS {
10     BASICHDR: load = BASICHDR, type = rw;
11     STARTUP:  load = STARTUP,  type = rw;
12     PAGE2:    load = PAGE2,    type = rw;
13     PAGE3:    load = PAGE3,    type = rw;
14     LOWCODE:  load = RAM,      type = ro,               optional = yes;
15     INIT:     load = RAM,      type = ro, define = yes, optional = yes;
16     CODE:     load = RAM,      type = ro;
17     RODATA:   load = RAM,      type = ro;
18     DATA:     load = RAM,      type = rw;
19     BSS:      load = RAM,      type = bss, define = yes;
20     HEAP:     load = RAM,      type = bss, optional = yes; # must sit just below stack
21     ZEROPAGE: load = ZP,       type = zp;
22     EXTZP:    load = ZP,       type = rw,  define = yes;
23 }
24 FEATURES {
25     CONDES: segment = INIT,
26             type = constructor,
27             label = __CONSTRUCTOR_TABLE__,
28             count = __CONSTRUCTOR_COUNT__;
29     CONDES: segment = RODATA,
30             type = destructor,
31             label = __DESTRUCTOR_TABLE__,
32             count = __DESTRUCTOR_COUNT__;
33     CONDES: segment = RODATA,
34             type = interruptor,
35             label = __INTERRUPTOR_TABLE__,
36             count = __INTERRUPTOR_COUNT__;
37 }
38 SYMBOLS {
39     __STACKSIZE__ = $800;       # 2K stack
40 }