SYMBOLS {
- __STACKSIZE__: type = weak, value = $0400;
__BACKBUFSIZE__: type = weak, value = $2000;
__OVERLAYSIZE__: type = weak, value = $0000;
__OVERLAYADDR__: type = weak, value = $8000 - __BACKBUFSIZE__ - __OVERLAYSIZE__;
- __VLIR0END__: type = weak, value = __OVERLAYADDR__ - __STACKSIZE__;
+ __STACKSIZE__: type = weak, value = $0400;
+ __STACKADDR__: type = weak, value = __OVERLAYADDR__ - __STACKSIZE__;
}
MEMORY {
- CVT: file = %O, start = $0, size = $40000;
+ CVT: file = %O, start = $0, size = $40000;
ZP: define = yes, start = $58, size = $1A + $06;
- VLIR0: define = yes, start = $0400, size = __VLIR0END__ - $0400;
+ VLIR0: define = yes, start = $0400, size = __STACKADDR__ - $0400;
VLIR1: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
VLIR2: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
VLIR3: define = yes, start = __OVERLAYADDR__, size = __OVERLAYSIZE__;
OVERLAY19: type = ro, run = VLIR19, load = CVT, align_load = $FE, optional = yes;
}
FEATURES {
- CONDES: segment = INIT,
- type = constructor,
- label = __CONSTRUCTOR_TABLE__,
- count = __CONSTRUCTOR_COUNT__;
- CONDES: segment = RODATA,
- type = destructor,
- label = __DESTRUCTOR_TABLE__,
- count = __DESTRUCTOR_COUNT__;
- CONDES: segment = RODATA,
- type = interruptor,
- label = __INTERRUPTOR_TABLE__,
- count = __INTERRUPTOR_COUNT__;
+ CONDES: type = constructor,
+ label = __CONSTRUCTOR_TABLE__,
+ count = __CONSTRUCTOR_COUNT__,
+ segment = INIT;
+ CONDES: type = destructor,
+ label = __DESTRUCTOR_TABLE__,
+ count = __DESTRUCTOR_COUNT__,
+ segment = RODATA;
+ CONDES: type = interruptor,
+ label = __INTERRUPTOR_TABLE__,
+ count = __INTERRUPTOR_COUNT__,
+ segment = RODATA,
+ import = __CALLIRQ__;
}