From 5caf6c8854ec2ee27899300a58e092fdf397bfce Mon Sep 17 00:00:00 2001 From: Christian Groessler Date: Fri, 13 Sep 2013 20:29:24 +0200 Subject: [PATCH] atarixl linker cfg file cleanups; set default load address to 400 for atarixl --- cfg/atarixl.cfg | 12 +++++++----- libsrc/atari/shadow_ram_handlers.s | 2 +- libsrc/atari/system_check.s | 9 ++++++--- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/cfg/atarixl.cfg b/cfg/atarixl.cfg index 493381779..551aa4433 100644 --- a/cfg/atarixl.cfg +++ b/cfg/atarixl.cfg @@ -1,5 +1,5 @@ FEATURES { - STARTADDRESS: default = $2E00; + STARTADDRESS: default = $2400; } SYMBOLS { @@ -17,7 +17,8 @@ MEMORY { # "system check" load chunk SYSCHKHDR: file = %O, start = $0000, size = $0004; - SYSCHK: file = %O, start = $2E00, size = $0E00; + SYSCHK: file = %O, start = $2E00, size = $0300; + SYSCHKTRL: file = %O, start = $0000, size = $0006; # "shadow RAM preparation" load chunk SRPREPHDR: file = %O, start = $0000, size = $0004; @@ -28,11 +29,11 @@ MEMORY { MAINHDR: file = %O, start = $0000, size = $0004; RAM: file = %O, define = yes, start = %S + __SAVEAREA_SIZE__ + - __LOWBUFS_SIZE__, size = $D000 - + __LOWDATA_SIZE__, size = $D000 - __STACKSIZE__ - %S - __SAVEAREA_SIZE__ - - __LOWBUFS_SIZE__; + __LOWDATA_SIZE__; # defines entry point into program TRAILER: file = %O, start = $0000, size = $0006; @@ -49,10 +50,11 @@ SEGMENTS { SYSCHKHDR: load = SYSCHKHDR, type = ro, optional = yes; SYSCHK: load = SYSCHK, type = rw, define = yes, optional = yes; + SYSCHKTRL: load = SYSCHKTRL, type = ro, optional = yes; SRPREPHDR: load = SRPREPHDR, type = ro; SAVEAREA: load = SRPREP, type = bss, define = yes; # shared btw. SRPREP and RAM - LOWBUFS: load = SRPREP, type = bss, define = yes; + LOWDATA: load = SRPREP, type = bss, define = yes; # " " " " " " " " SRPREP: load = SRPREP, type = rw, define = yes; SHADOW_RAM: load = SRPREP, run = RAM_BELOW_ROM, type = rw, define = yes, optional = yes; SRPREPTRL: load = SRPREPTRL, type = ro; diff --git a/libsrc/atari/shadow_ram_handlers.s b/libsrc/atari/shadow_ram_handlers.s index e9b682cf1..0a7e3ef00 100644 --- a/libsrc/atari/shadow_ram_handlers.s +++ b/libsrc/atari/shadow_ram_handlers.s @@ -117,7 +117,7 @@ sram_init: zpptr1: .res 2 -.segment "LOWBUFS" +.segment "LOWDATA" ; bounce buffers for CIO and SIO calls bounce_buffer: .res BUFSZ_SIO diff --git a/libsrc/atari/system_check.s b/libsrc/atari/system_check.s index 2baa5d19c..b0abc0dc8 100644 --- a/libsrc/atari/system_check.s +++ b/libsrc/atari/system_check.s @@ -17,7 +17,7 @@ DEBUG = 1 .export syschk .import __SYSCHK_LOAD__ - .import __SAVEAREA_LOAD__ + .import __SAVEAREA_LOAD__ ; needed by xlmemchk.inc .include "zeropage.inc" .include "atari.inc" @@ -64,7 +64,7 @@ cont: ldx #0 ; channel 0 .segment "SYSCHKHDR" .word __SYSCHK_LOAD__ - .word trailer - 1 + .word end - 1 ; ------------------------------------------------------------------------ ; Actual code @@ -142,10 +142,13 @@ loop: dey .endproc +end: + ; ------------------------------------------------------------------------ ; Chunk "trailer" - sets INITAD -trailer: +.segment "SYSCHKTRL" + .word INITAD .word INITAD+1 .word syschk -- 2.39.5