add cheats N, O

This commit is contained in:
Peter Ferrie 2022-05-12 22:30:35 -07:00
parent 66ded84da1
commit 37e1ee0158
9 changed files with 118 additions and 19 deletions

View File

@ -265,21 +265,21 @@
1001,MR=Mr. Robot
0001,MP=Ms. Pacman
0000,N.O.R.A.D=N O R A D
0000,NEON=Neon
0004,NEON=Neon
0001,NEPTUNE=Neptune
0007,NT=Neu][ower
1000,NEUTRONS=Neutrons
0000,NIBBLER=Nibbler
0004,NIBBLER=Nibbler
0007,NM=Night Mission Pinball
0000,NIGHT.STALKER=Night Stalker
0000,NI=Nightmare Gallery
0000,OM=O'Riley's Mine
0001,NIGHT.STALKER=Night Stalker
0001,NI=Nightmare Gallery
0001,OM=O'Riley's Mine
0001,OID.ZONE=Oid Zone
1001,OI=Oil's Well
1000,ON.THE.RUN=On The Run
1001,ON.THE.RUN=On The Run
0007,ORBITRON=Orbitron
0000,OW=Out of This World
0000,OUTPOST=Outpost
0001,OUTPOST=Outpost
0000,OUTWORLD=Outworld
0001,PACMAN=Pacman
0001,PB=Pandora's Box

View File

@ -11,7 +11,7 @@
; ...unused...
; E000..E3FF - HGR font data
; ...unused...
; E77E..FFEB - main program code
; E76A..FFEB - main program code
; FFEC..FFF9 - API functions and global constants available for main program
; code, prelaunchers, transition effects, &c.
; (LoadFileDirect, Wait/UnwaitForVBL, MockingboardStuff, MachineStatus)

View File

@ -1,5 +1,5 @@
;license:MIT
;(c) 2021 by Frank M.
;(c) 2021-2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/NEON",plain
@ -17,9 +17,35 @@
lda #1
sta $14A0 ; reset vector fix
+DISABLE_ACCEL
+READ_RAM2_NO_WRITE
lda MachineStatus
and #CHEATS_ENABLED
beq +
lda #<callback
sta $1667
lda #>callback
sta $1668
lda #$A5
sta $1865 ; patch - don't increase lives
sta $1873 ; patch - don't decrease lives
+
jsr DisableAccelerator
+READ_ROM_NO_WRITE
jmp $149A
callback
jsr $BD00
lda $7B
bne +
dec $9EC4 ; patch - don't decrease time
dec $9ECC ; patch - don't decrease time
beq ++
+ cmp #3
bne ++
dec $9338 ; patch - don't decrease time
dec $9380 ; patch - don't decrease time
++ rts
!if * > $1C0 {
!error "code is too large, ends at ", *
}

30
src/prelaunch/nibbler.a Normal file
View File

@ -0,0 +1,30 @@
;license:MIT
;(c) 2022 by qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/NIBBLER",plain
*=$106
!source "src/prelaunch/common.a"
+ENABLE_ACCEL
lda #$60
sta $8A19
jsr $6550 ; decompress
+READ_RAM2_NO_WRITE
lda MachineStatus
and #CHEATS_ENABLED
beq +
lda #$EA
sta $11A0 ; patch - don't decrease lives
lda #$A5
sta $12D3 ; patch - don't decrease time
+
jsr DisableAccelerator
+READ_ROM_NO_WRITE
jmp $900
!if * > $1C0 {
!error "code is too large, ends at ", *
}

View File

@ -1,5 +1,5 @@
;license:MIT
;(c) 2019 by Frank M.
;(c) 2019, 2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/NIGHT.STALKER",plain
@ -18,8 +18,18 @@
lda #$FA
sta $6496 ; reset vector patch (reboot)
lda #$60
sta $2A5
+DISABLE_ACCEL
jmp $283
jsr $283
+GET_MACHINE_STATUS
and #CHEATS_ENABLED
beq +
lda #0
sta $1DEC ; patch - don't increase lives
sta $13D0 ; patch - don't decrease lives
+
jmp $6000
!if * > $1C0 {

View File

@ -1,5 +1,5 @@
;license:MIT
;(c) 2020 by Frank M.
;(c) 2020, 2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/NI",plain
@ -27,7 +27,16 @@
sta $8CC5
sta $8CE2
+DISABLE_ACCEL
+READ_RAM2_NO_WRITE
lda MachineStatus
and #CHEATS_ENABLED
beq +
lda #$AD
sta $8718 ; patch - don't decrease lives
sta $8980 ; patch - don't increase lives
+
jsr DisableAccelerator
+READ_ROM_NO_WRITE
jmp $1206
callback sec ; non-ROM WAIT

View File

@ -1,5 +1,5 @@
;license:MIT
;(c) 2021 by Frank M.
;(c) 2021-2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/ON.THE.RUN",plain
@ -17,6 +17,13 @@
hook +RESET_VECTOR $100
+GET_MACHINE_STATUS
and #CHEATS_ENABLED
beq +
lda #$A5
sta $DC1 ; patch - don't decrease lives
sta $1FD4 ; patch - don't increase lives
+
jmp $800
!if * > $1C0 {

View File

@ -1,5 +1,5 @@
;license:MIT
;(c) 2019 by Frank M.
;(c) 2019, 2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/OM",plain
@ -22,7 +22,15 @@
sta $201B ; reset vector patch
sta $8133 ; (yes, that's 3 times)
+DISABLE_ACCEL
+READ_RAM2_NO_WRITE
lda MachineStatus
and #CHEATS_ENABLED
beq +
lda #$AD
sta $831C ; patch - don't decrease lives
+
jsr DisableAccelerator
+READ_ROM_NO_WRITE
jmp $8FD
!if * > $1C0 {

View File

@ -1,5 +1,5 @@
;license:MIT
;(c) 2019 by Frank M.
;(c) 2019, 2022 by Frank M., qkumba
!cpu 6502
!to "build/PRELAUNCH.INDEXED/OUTPOST",plain
@ -13,7 +13,16 @@
jsr $3EC8 ; decompress/title/set reset vector
+RESET_VECTOR $100
jmp $200
lda #$60
sta $211
jsr $200
+GET_MACHINE_STATUS
and #CHEATS_ENABLED
beq +
lda #$B5
sta $8086 ; patch - don't decrease lives
+
jmp $8000
!if * > $1C0 {
!error "code is too large, ends at ", *