mirror of
https://github.com/a2-4am/4cade.git
synced 2024-12-26 20:30:29 +00:00
Quit to TR and add cheat for Castle Wolfenstein (#166)
This commit is contained in:
parent
3cc0f8b85d
commit
f4b48ca671
@ -45,7 +45,7 @@
|
||||
0001,CANYON.CLIMBER
|
||||
0000,CAPTN.GOODNIGHT=Captain Goodnight
|
||||
0000,SMURFEN=Castle Smurfenstein
|
||||
0000,WOLFEN84=Castle Wolfenstein
|
||||
0002,WOLFEN84=Castle Wolfenstein
|
||||
1001,CAVRNS.CALLISTO=Caverns of Callisto
|
||||
1001,CEILING.ZERO
|
||||
0001,CENTIPEDE
|
||||
|
@ -1,5 +1,5 @@
|
||||
;license:MIT
|
||||
;(c) 2019 by qkumba/Frank M.
|
||||
;(c) 2019-20 by qkumba/Frank M./Tom Greene
|
||||
|
||||
!cpu 6502
|
||||
!to "build/PRELAUNCH/WOLFEN84",plain
|
||||
@ -18,23 +18,47 @@
|
||||
sta $B749
|
||||
jmp $B700
|
||||
|
||||
reset
|
||||
+READ_ROM_NO_WRITE
|
||||
jmp $FAA6
|
||||
|
||||
callback
|
||||
+READ_RAM2_WRITE_RAM2
|
||||
lda #<reset
|
||||
lda #$00
|
||||
sta $9E52
|
||||
sta $FFFC
|
||||
lda #>reset
|
||||
lda #$01
|
||||
sta $9E53
|
||||
sta $FFFD ; reset vector patch
|
||||
+READ_ROM_NO_WRITE
|
||||
|
||||
lda #<patch ; intercept BRUN command before
|
||||
sta $A395 ; it jumps to the loaded file
|
||||
lda #>patch
|
||||
sta $A396
|
||||
|
||||
+DISABLE_ACCEL
|
||||
jmp $9D84
|
||||
|
||||
patch
|
||||
!word brunpatch
|
||||
|
||||
brunpatch
|
||||
lda $AA76 ; check second character of filename
|
||||
cmp #$C9 ; = I, filename = @INIT
|
||||
bne +
|
||||
|
||||
ldx #$01 ; Patch it to return to TR
|
||||
stx $0DFF ; instead of exiting to BASIC
|
||||
|
||||
inc $0D87 ; prevent language card detection
|
||||
|
||||
+ cmp #$D7 ; = W, filename = @WOLF
|
||||
bne ++
|
||||
|
||||
+GET_MACHINE_STATUS
|
||||
and #CHEATS_ENABLED
|
||||
beq ++
|
||||
ldx #$03
|
||||
stx $4048 ; start with 3 grenades
|
||||
ldx #$2C
|
||||
stx $1435 ; don't decrement bullets
|
||||
stx $18FE ; or grenades
|
||||
|
||||
++ jmp ($AA72) ; finally jump to the loaded file
|
||||
|
||||
!if * > $1C0 {
|
||||
!error "code is too large, ends at ", *
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user