]> git.sur5r.net Git - cc65/blob - src/ld65/cfg/geos-cbm.cfg
Introduced __BACKBUFSIZE__ which can be set to zero in order to disable the GEOS...
[cc65] / src / ld65 / cfg / geos-cbm.cfg
1 SYMBOLS {
2     __STACKSIZE__:   type = weak, value = $0400;
3     __BACKBUFSIZE__: type = weak, value = $2000;
4     __OVERLAYSIZE__: type = weak, value = $0000;
5     __OVERLAYADDR__: type = weak, value = $8000 - __BACKBUFSIZE__ - __OVERLAYSIZE__;
6     __VLIR0END__:    type = weak, value = __OVERLAYADDR__ - __STACKSIZE__;
7 }
8 MEMORY {
9     CVT:    file = %O,    start = $0,              size = $40000;
10     ZP:     define = yes, start = $58,             size = $1A + $06;
11     VLIR0:  define = yes, start = $0400,           size = __VLIR0END__ - $0400;
12     VLIR1:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
13     VLIR2:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
14     VLIR3:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
15     VLIR4:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
16     VLIR5:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
17     VLIR6:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
18     VLIR7:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
19     VLIR8:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
20     VLIR9:  define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
21     VLIR10: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
22     VLIR11: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
23     VLIR12: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
24     VLIR13: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
25     VLIR14: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
26     VLIR15: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
27     VLIR16: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
28     VLIR17: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
29     VLIR18: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
30     VLIR19: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
31 }
32 SEGMENTS {
33     ZEROPAGE:  type = zp,  load = ZP;
34     EXTZP:     type = zp,  load = ZP;
35     DIRENTRY:  type = ro,                 load = CVT, align      = $FE;
36     FILEINFO:  type = ro,                 load = CVT, align      = $FE;
37     RECORDS:   type = ro,                 load = CVT, align      = $FE, optional = yes;
38     STARTUP:   type = ro,  run  = VLIR0,  load = CVT, align_load = $FE, define   = yes;
39     LOWCODE:   type = ro,  run  = VLIR0,  load = CVT,                   optional = yes;
40     INIT:      type = ro,  run  = VLIR0,  load = CVT, define     = yes, optional = yes;
41     CODE:      type = ro,  run  = VLIR0,  load = CVT;
42     RODATA:    type = ro,  run  = VLIR0,  load = CVT;
43     DATA:      type = rw,  run  = VLIR0,  load = CVT;
44     BSS:       type = bss, load = VLIR0,              define     = yes;
45     OVERLAY1:  type = ro,  run  = VLIR1,  load = CVT, align_load = $FE, optional = yes;
46     OVERLAY2:  type = ro,  run  = VLIR2,  load = CVT, align_load = $FE, optional = yes;
47     OVERLAY3:  type = ro,  run  = VLIR3,  load = CVT, align_load = $FE, optional = yes;
48     OVERLAY4:  type = ro,  run  = VLIR4,  load = CVT, align_load = $FE, optional = yes;
49     OVERLAY5:  type = ro,  run  = VLIR5,  load = CVT, align_load = $FE, optional = yes;
50     OVERLAY6:  type = ro,  run  = VLIR6,  load = CVT, align_load = $FE, optional = yes;
51     OVERLAY7:  type = ro,  run  = VLIR7,  load = CVT, align_load = $FE, optional = yes;
52     OVERLAY8:  type = ro,  run  = VLIR8,  load = CVT, align_load = $FE, optional = yes;
53     OVERLAY9:  type = ro,  run  = VLIR9,  load = CVT, align_load = $FE, optional = yes;
54     OVERLAY10: type = ro,  run  = VLIR10, load = CVT, align_load = $FE, optional = yes;
55     OVERLAY11: type = ro,  run  = VLIR11, load = CVT, align_load = $FE, optional = yes;
56     OVERLAY12: type = ro,  run  = VLIR12, load = CVT, align_load = $FE, optional = yes;
57     OVERLAY13: type = ro,  run  = VLIR13, load = CVT, align_load = $FE, optional = yes;
58     OVERLAY14: type = ro,  run  = VLIR14, load = CVT, align_load = $FE, optional = yes;
59     OVERLAY15: type = ro,  run  = VLIR15, load = CVT, align_load = $FE, optional = yes;
60     OVERLAY16: type = ro,  run  = VLIR16, load = CVT, align_load = $FE, optional = yes;
61     OVERLAY17: type = ro,  run  = VLIR17, load = CVT, align_load = $FE, optional = yes;
62     OVERLAY18: type = ro,  run  = VLIR18, load = CVT, align_load = $FE, optional = yes;
63     OVERLAY19: type = ro,  run  = VLIR19, load = CVT, align_load = $FE, optional = yes;
64 }
65 FEATURES {
66     CONDES: segment = INIT,
67             type    = constructor,
68             label   = __CONSTRUCTOR_TABLE__,
69             count   = __CONSTRUCTOR_COUNT__;
70     CONDES: segment = RODATA,
71             type    = destructor,
72             label   = __DESTRUCTOR_TABLE__,
73             count   = __DESTRUCTOR_COUNT__;
74     CONDES: segment = RODATA,
75             type    = interruptor,
76             label   = __INTERRUPTOR_TABLE__,
77             count   = __INTERRUPTOR_COUNT__;
78 }