2020-01-28 19:19:10 +00:00
|
|
|
;license:MIT
|
|
|
|
;(c) 2020 by qkumba
|
|
|
|
|
|
|
|
!cpu 6502
|
|
|
|
!to "build/PRELAUNCH/BEJEWELED",plain
|
|
|
|
*=$106
|
|
|
|
|
|
|
|
!source "src/prelaunch/common.a"
|
|
|
|
|
|
|
|
+ENABLE_ACCEL
|
|
|
|
lda #<callback
|
2020-01-29 17:48:53 +00:00
|
|
|
sta $4491
|
2020-01-28 19:19:10 +00:00
|
|
|
lda #>callback
|
2020-01-29 17:48:53 +00:00
|
|
|
sta $4492
|
2020-01-28 19:19:10 +00:00
|
|
|
jmp $800 ; decompress
|
|
|
|
|
2020-01-29 22:24:09 +00:00
|
|
|
helper
|
|
|
|
lda $862D
|
|
|
|
cmp #$CB ; write file
|
|
|
|
bne nohelp
|
|
|
|
lda $8A4D ; write address
|
|
|
|
cmp #$F5 ; writing "valid"
|
|
|
|
beq nocall ; ignore it
|
|
|
|
ldx $8A4F
|
|
|
|
dex
|
|
|
|
bne write
|
|
|
|
lda #<(callback + 2)
|
|
|
|
sta $8A4D
|
|
|
|
lda #>(callback + 2)
|
|
|
|
sta $8A4E ; point to known zero
|
|
|
|
|
|
|
|
write
|
|
|
|
dec $8A4D ; write address
|
|
|
|
|
|
|
|
nohelp
|
|
|
|
jmp $D670 ; ProDOS_enter
|
|
|
|
|
|
|
|
nocall
|
|
|
|
plp
|
|
|
|
pla
|
|
|
|
pla
|
|
|
|
clc
|
|
|
|
rts
|
|
|
|
|
2020-01-28 19:19:10 +00:00
|
|
|
callback
|
|
|
|
jsr $BE00
|
2020-01-29 22:24:09 +00:00
|
|
|
lda #<helper
|
|
|
|
sta $BF0B
|
|
|
|
lda #>helper
|
|
|
|
sta $BF0C
|
2020-01-28 19:19:10 +00:00
|
|
|
+DISABLE_ACCEL
|
|
|
|
rts
|
|
|
|
|
|
|
|
!if * > $1C0 {
|
|
|
|
!error "code is too large, ends at ", *
|
|
|
|
}
|