]> git.sur5r.net Git - cc65/commitdiff
Separate header and trailers of Atari system_check chunk.
authorDaniel Serpell <daniel.serpell@gmail.com>
Mon, 18 Feb 2019 03:26:01 +0000 (00:26 -0300)
committerDaniel Serpell <daniel.serpell@gmail.com>
Thu, 21 Feb 2019 22:00:17 +0000 (19:00 -0300)
This allows to omit the headers and trailers if needed.

libsrc/atari/system_check.s
libsrc/atari/system_check_hdr.s [new file with mode: 0644]
libsrc/atari/system_check_trailer.s [new file with mode: 0644]

index 19efaf2e28ee8ea1c9f0d09ad4631bcb56f2fdff..df7c433a4968a98512397c0af1972c02308a8ccb 100644 (file)
@@ -16,8 +16,7 @@
 
 ;DEBUG   =       1
 
-        .export         __SYSTEM_CHECK__: absolute = 1
-        .import         __SYSCHK_LOAD__
+        .export         __SYSTEM_CHECK__, __SYSCHK_END__
         .import         __STARTADDRESS__
 
         ; the following imports are only needed for the 'atari' target version
         .import         __STACKSIZE__
         .import         __RESERVED_MEMORY__
 
+        ; import our header and trailers
+        .forceimport    __SYSCHKHDR__, __SYSCHKTRL__
+
         .include        "zeropage.inc"
         .include        "atari.inc"
 
-
 .macro print_string text
         .local  start, cont
         jmp     cont
@@ -229,25 +230,10 @@ delay1: ldx     #0
 
 .endproc
 
-end:
+__SYSTEM_CHECK__=syschk
+__SYSCHK_END__:
 
 .ifndef __ATARIXL__
 tmp:            ; outside of the load chunk, some kind of poor man's .bss
 .endif
 
-; ------------------------------------------------------------------------
-; Chunk header
-
-.segment        "SYSCHKHDR"
-
-        .word   __SYSCHK_LOAD__
-        .word   end - 1
-
-; ------------------------------------------------------------------------
-; Chunk "trailer" - sets INITAD
-
-.segment        "SYSCHKTRL"
-
-        .word   INITAD
-        .word   INITAD+1
-        .word   syschk
diff --git a/libsrc/atari/system_check_hdr.s b/libsrc/atari/system_check_hdr.s
new file mode 100644 (file)
index 0000000..1581ab9
--- /dev/null
@@ -0,0 +1,16 @@
+;
+; Atari startup system check headers
+;
+; Christian Groessler, chris@groessler.org, 2013
+;
+        .export         __SYSCHKHDR__: absolute = 1
+        .import         __SYSCHK_LOAD__, __SYSCHK_END__
+
+; ------------------------------------------------------------------------
+; Chunk header
+
+.segment        "SYSCHKHDR"
+
+        .word   __SYSCHK_LOAD__
+        .word   __SYSCHK_END__ - 1
+
diff --git a/libsrc/atari/system_check_trailer.s b/libsrc/atari/system_check_trailer.s
new file mode 100644 (file)
index 0000000..312b83b
--- /dev/null
@@ -0,0 +1,17 @@
+;
+; Atari startup system check headers
+;
+; Christian Groessler, chris@groessler.org, 2013
+;
+        .export         __SYSCHKTRL__: absolute = 1
+        .import         __SYSTEM_CHECK__
+
+        .include        "atari.inc"
+; ------------------------------------------------------------------------
+; Chunk "trailer" - sets INITAD
+
+.segment        "SYSCHKTRL"
+
+        .word   INITAD
+        .word   INITAD+1
+        .word   __SYSTEM_CHECK__