; add "-u __BOOT__" to the cl65/ld65 command line. Then, the linker
; will import this symbol name; and, link this module at the front
; of your program file.
-;
- .export __BOOT__:abs = 1
- .import __RAM_START__, __RAM_SIZE__, __BSS_RUN__
+ .export __BOOT__ : abs = 1
+
+ .import __MAIN_START__, __MAIN_SIZE__, __BSS_RUN__
; ------------------------------------------------------------------------
-load_addr := __RAM_START__
-load_size = __BSS_RUN__ - __RAM_START__
-ram_top := __RAM_START__ + __RAM_SIZE__
+load_addr := __MAIN_START__
+load_size = __BSS_RUN__ - __MAIN_START__
+ram_top := __MAIN_START__ + __MAIN_SIZE__
.segment "BOOT"
FIRSTVISC = $85 ; Offset of first visible character in video RAM
LINEDIST = $20 ; Offset in video RAM between two lines
+ ldy #<$0000
lda #<load_addr
ldx #>load_addr
- tay
+ sta load
stx load+1
lda #<load_size
eor #$FF
; ASCII-coded hexadecimal translation of the above assembly code.
; It was copied from the assembler listing.
+ .byte "A0", CR, "00", CR
.byte "A9", CR
hex2 <load_addr
.byte CR, "A2", CR
hex2 >load_addr
- .byte CR, "A8", CR
+ .byte CR, "85", CR, "08", CR
.byte "86", CR, "09", CR
.byte "A9", CR
hex2 <load_size