2022-05-29 02:24:25 +00:00
|
|
|
;license:MIT
|
|
|
|
;(c) 2022 by qkumba
|
|
|
|
|
|
|
|
!cpu 6502
|
|
|
|
!to "build/PRELAUNCH.INDEXED/SPELLWIELDER",plain
|
|
|
|
*=$106
|
|
|
|
|
2024-05-25 23:18:49 +00:00
|
|
|
!source "src/macros.a"
|
2022-05-29 02:24:25 +00:00
|
|
|
|
2022-06-03 00:11:07 +00:00
|
|
|
+GET_MACHINE_STATUS
|
|
|
|
and #CHEATS_ENABLED
|
|
|
|
sta cheat+1
|
2022-05-29 02:24:25 +00:00
|
|
|
lda #<callback1
|
|
|
|
sta $77A2
|
|
|
|
lda #>callback1
|
|
|
|
sta $77A3
|
|
|
|
jmp $6C00 ; decompress
|
|
|
|
|
|
|
|
callback1
|
|
|
|
lda #<callback2
|
|
|
|
sta $2200
|
|
|
|
lda #>callback2
|
|
|
|
sta $2201
|
|
|
|
lda #$A6
|
|
|
|
sta $2204
|
|
|
|
lda #$FA
|
|
|
|
sta $2205 ; reset vector
|
|
|
|
jmp $2000
|
|
|
|
|
|
|
|
callback2
|
|
|
|
lda #$A6
|
|
|
|
sta $8778
|
|
|
|
lda #$FA
|
|
|
|
sta $877A ; reset vector
|
2022-06-03 00:11:07 +00:00
|
|
|
|
|
|
|
cheat
|
|
|
|
lda #0 ; SMC
|
|
|
|
beq +
|
|
|
|
lda #<callback3
|
|
|
|
sta $ABD3
|
|
|
|
lda #>callback3
|
|
|
|
sta $ABD4
|
|
|
|
sta $1812
|
|
|
|
+
|
2022-05-29 02:24:25 +00:00
|
|
|
jmp $BE00
|
|
|
|
|
2022-06-03 00:11:07 +00:00
|
|
|
callback3
|
|
|
|
ldx $1812
|
|
|
|
dex
|
|
|
|
bne +
|
|
|
|
stx $1812
|
|
|
|
stx $1ACB
|
|
|
|
+
|
|
|
|
jmp $8774
|
|
|
|
|
2022-05-29 02:24:25 +00:00
|
|
|
!if * > $1C0 {
|
|
|
|
!error "code is too large, ends at ", *
|
|
|
|
}
|