This allows to omit the headers and trailers if needed.
;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
.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
--- /dev/null
+;
+; 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
+
--- /dev/null
+;
+; 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__