mirror of
https://github.com/a2-4am/4cade.git
synced 2024-09-29 09:55:29 +00:00
59 lines
1.1 KiB
Plaintext
59 lines
1.1 KiB
Plaintext
;license:MIT
|
|
;(c) 2022 by qkumba
|
|
|
|
!cpu 6502
|
|
!to "build/PRELAUNCH.INDEXED/SPELLWIELDER",plain
|
|
*=$106
|
|
|
|
!source "src/prelaunch/common.a"
|
|
|
|
+GET_MACHINE_STATUS
|
|
and #CHEATS_ENABLED
|
|
sta cheat+1
|
|
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
|
|
|
|
cheat
|
|
lda #0 ; SMC
|
|
beq +
|
|
lda #<callback3
|
|
sta $ABD3
|
|
lda #>callback3
|
|
sta $ABD4
|
|
sta $1812
|
|
+
|
|
jmp $BE00
|
|
|
|
callback3
|
|
ldx $1812
|
|
dex
|
|
bne +
|
|
stx $1812
|
|
stx $1ACB
|
|
+
|
|
jmp $8774
|
|
|
|
!if * > $1C0 {
|
|
!error "code is too large, ends at ", *
|
|
}
|