1SYMBOLS { 2 __ORIXHDR__: type = import; 3 __STACKSIZE__: type = weak, value = $0800; # 2K stack 4 __GRAB__: type = weak, value = 0; # 0=don't grab graphics RAM, 1=grab graphics RAM 5 __RAMEND__: type = weak, value = $9800 + $1C00 * __GRAB__; 6} 7MEMORY { 8 ZP: file = "", define = yes, start = $00B0, size = $003A; 9 ORIXHDR: file = %O, type = ro, start = $0000, size = $001F; 10 MAIN: file = %O, define = yes, start = $0800, size = __RAMEND__ - __MAIN_START__; 11 BSS: file = "", start = __ONCE_RUN__, size = __RAMEND__ - __STACKSIZE__ - __ONCE_RUN__; 12} 13SEGMENTS { 14 ZEROPAGE: load = ZP, type = zp; 15 ORIXHDR: load = ORIXHDR, type = ro; 16 STARTUP: load = MAIN, type = ro; 17 LOWCODE: load = MAIN, type = ro, optional = yes; 18 CODE: load = MAIN, type = ro; 19 RODATA: load = MAIN, type = ro; 20 DATA: load = MAIN, type = rw; 21 INIT: load = MAIN, type = rw; 22 ONCE: load = MAIN, type = ro, define = yes; 23 BASTAIL: load = MAIN, type = ro, optional = yes; 24 BSS: load = BSS, type = bss, define = yes; 25} 26FEATURES { 27 CONDES: type = constructor, 28 label = __CONSTRUCTOR_TABLE__, 29 count = __CONSTRUCTOR_COUNT__, 30 segment = ONCE; 31 CONDES: type = destructor, 32 label = __DESTRUCTOR_TABLE__, 33 count = __DESTRUCTOR_COUNT__, 34 segment = RODATA; 35 CONDES: type = interruptor, 36 label = __INTERRUPTOR_TABLE__, 37 count = __INTERRUPTOR_COUNT__, 38 segment = RODATA, 39 import = __CALLIRQ__; 40} 41