From fb4a1ccddac2ab27e9075900688d2b51589c9582 Mon Sep 17 00:00:00 2001 From: Peter Ferrie Date: Wed, 18 May 2022 21:42:49 -0700 Subject: [PATCH] add cheats T --- res/GAMES.CONF | 34 ++++++------ ... freitag 17k file PRODOS (san inc pack).po | Bin 143360 -> 143360 bytes src/index/artwork.idx.a | 2 +- src/index/attract.idx.a | 2 +- src/index/cache00.idx.a | 2 +- src/index/cache01.idx.a | 2 +- src/index/cache10.idx.a | 2 +- src/index/cache11.idx.a | 2 +- src/index/coverfade.idx.a | 2 +- src/index/credits.idx.a | 2 +- src/index/decrunch.idx.a | 2 +- src/index/dfx.idx.a | 2 +- src/index/dgr.fizzle.idx.a | 2 +- src/index/dgr.idx.a | 2 +- src/index/dhgr.idx.a | 2 +- src/index/dtitle.idx.a | 2 +- src/index/fx.idx.a | 2 +- src/index/gamehelp.idx.a | 2 +- src/index/gr.fizzle.idx.a | 2 +- src/index/gr.idx.a | 2 +- src/index/helptext.idx.a | 2 +- src/index/hgr0.idx.a | 2 +- src/index/hgr1.idx.a | 2 +- src/index/hgr2.idx.a | 2 +- src/index/hgr3.idx.a | 2 +- src/index/hgr4.idx.a | 2 +- src/index/hgr5.idx.a | 2 +- src/index/hgr6.idx.a | 2 +- src/index/joystick.idx.a | 2 +- src/index/miniattract0.idx.a | 2 +- src/index/miniattract1.idx.a | 2 +- src/index/prelaunch.idx.a | 2 +- src/index/res.cover.idx.a | 2 +- src/index/res.help.idx.a | 2 +- src/index/res.title.idx.a | 2 +- src/index/search00.idx.a | 2 +- src/index/search01.idx.a | 2 +- src/index/search10.idx.a | 2 +- src/index/search11.idx.a | 2 +- src/index/sfx.idx.a | 2 +- src/index/slideshow.idx.a | 2 +- src/index/title.idx.a | 2 +- src/prelaunch/caverns.freitag.a | 14 ++++- src/prelaunch/last.gladiator.a | 33 +++++++----- src/prelaunch/movie.monster.a | 51 ++++++++++++++++++ src/prelaunch/teleport.a | 13 ++++- src/prelaunch/teritory.a | 47 ++++++++++++++++ src/prelaunch/the.goonies.a | 25 ++++++++- src/prelaunch/the.snapper.a | 30 +++++++++++ src/prelaunch/thief.a | 29 ++++++++++ src/prelaunch/time.pilot.a | 22 ++++++++ src/prelaunch/tom.sawyer.a | 33 ++++++++++++ src/prelaunch/torax.a | 12 ++++- src/prelaunch/track.attack.a | 14 ++++- src/prelaunch/treasure.dive.a | 9 +++- src/prelaunch/trolls.tribs.a | 9 ++++ src/prelaunch/tsunami.a | 14 ++++- src/prelaunch/tunnel.terror.a | 14 ++++- 58 files changed, 399 insertions(+), 84 deletions(-) create mode 100644 src/prelaunch/movie.monster.a create mode 100644 src/prelaunch/teritory.a create mode 100644 src/prelaunch/the.snapper.a create mode 100644 src/prelaunch/thief.a create mode 100644 src/prelaunch/time.pilot.a create mode 100644 src/prelaunch/tom.sawyer.a diff --git a/res/GAMES.CONF b/res/GAMES.CONF index 32f2b4d8a..8852f6e35 100755 --- a/res/GAMES.CONF +++ b/res/GAMES.CONF @@ -381,7 +381,7 @@ 1000,STARMINES=Starmines 0000,STATION.5=Station 5 0000,STELLAR.7=Stellar 7 -0001,SUCCESSION=Succession +0004,SUCCESSION=Succession 0004,SU=Suicide! 0001,SUPER.BUNNY=Super Bunny 0000,SUPER.HUEY=Super Huey @@ -393,41 +393,41 @@ 0006,TALON=Talon 0001,TAPPER=Tapper 0116,TC=TechnoCop -0000,TELEPORT=Teleport -0000,TERITORY=Teritory +0001,TELEPORT=Teleport +0001,TERITORY=Teritory 0010,TETRIS=Tetris 1001,TU=Tharolian Tunnels 0001,AF=The Asteroid Field 0000,THE.BILESTOAD=The Bilestoad -0000,CF=The Caverns of Freitag -0110,TS=The Chase on Tom S's Island +0006,CF=The Caverns of Freitag +0111,TS=The Chase on Tom S's Island 1000,THE.DAM.BUSTERS=The Dam Busters -1000,THE.GOONIES=The Goonies +1001,THE.GOONIES=The Goonies 0007,THE.HEIST=The Heist -1000,LG=The Last Gladiator +1001,LG=The Last Gladiator 1111,THE.LAST.NINJA=The Last Ninja -1100,MM=The Movie Monster Game -0000,THE.SNAPPER=The Snapper +1106,MM=The Movie Monster Game +0004,THE.SNAPPER=The Snapper 0000,THE.SPACE.ARK=The Space Ark 0001,S2=The Spy Strikes Back 1000,VV=The Voyage of the Valkyrie 0016,THEXDER=Thexder -0000,THIEF=Thief +0001,THIEF=Thief 0001,THRESHOLD=Threshold 0001,THUNDER.BOMBS=Thunder Bombs -1000,TIME.PILOT=Time Pilot +1001,TIME.PILOT=Time Pilot 0001,TITAN.CRONUS=Titan Cronus 1000,TOMAHAWK=Tomahawk -0000,TORAX=Torax +0001,TORAX=Torax 1000,TORPEDO.TERROR=Torpedo Terror -0000,TRACK.ATTACK=Track Attack -0000,TREASURE.DIVE=Treasure Dive +0004,TRACK.ATTACK=Track Attack +0001,TREASURE.DIVE=Treasure Dive 0000,TRIAD=Triad -1000,TROLLS.TRIBS=Trolls and Tribulations +1003,TROLLS.TRIBS=Trolls and Tribulations 0001,TROMPERS=Trompers -1000,TSUNAMI=Tsunami +1004,TSUNAMI=Tsunami 1007,TB=Tubeway ][ -0000,TUNNEL.TERROR=Tunnel Terror +0001,TUNNEL.TERROR=Tunnel Terror 0001,TWERPS=Twerps 1001,UD=Up'n Down 0110,VICTORY.ROAD=Victory Road diff --git a/res/dsk/the caverns of freitag 17k file PRODOS (san inc pack).po b/res/dsk/the caverns of freitag 17k file PRODOS (san inc pack).po index 79167c0241dafff6a274931875e0a48ec8a345de..2bc9085508a34f01535f3cf3b1a36645b2bd19ee 100644 GIT binary patch delta 67 zcmZp8z|ru4V?zy#G6OPT(_m0$2y$lFq{GU~!0?#CVUrFEFVkj5rbNa~Y!*Ju%&q;+ N) $1C0 { !error "code is too large, ends at ", * diff --git a/src/prelaunch/last.gladiator.a b/src/prelaunch/last.gladiator.a index 4c02dc0fc..3d59aeb5b 100644 --- a/src/prelaunch/last.gladiator.a +++ b/src/prelaunch/last.gladiator.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2020 by qkumba +;(c) 2020, 2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/LG",plain @@ -14,24 +14,31 @@ lda #$4C sta $BC00 - lda #$40 + lda #callback1 sta $BC02 - lda #callback2 + ldx #reset @@ -48,11 +55,11 @@ callback2 bne + lda $2D bne + - lda #$15 + lda #reset sta $5FF3 - lda #$FE + lda #(>reset xor $A5) xor $59 sta $5FF4 + rts } diff --git a/src/prelaunch/movie.monster.a b/src/prelaunch/movie.monster.a new file mode 100644 index 000000000..39f70dcfa --- /dev/null +++ b/src/prelaunch/movie.monster.a @@ -0,0 +1,51 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/MM",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #$60 + sta $9C7 + jsr $800 ; find and load "DOS" + iny + sty $B719 + jsr $B700 + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #callback + sta $BD08 ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + jmp $900 + +callback + pla + pla + jsr $BD44 + jsr $BD09 + lda $B790 + cmp #$12 + bne + + lda $B791 + cmp #$0b + bne + + lda $BD13 + cmp #$20 + bne + + lda #$a5 + sta $7CD6 ; patch - don't decrease endurance ++ clc + rts + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/teleport.a b/src/prelaunch/teleport.a index c9e58000f..621dcd90f 100644 --- a/src/prelaunch/teleport.a +++ b/src/prelaunch/teleport.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba +;(c) 2021-2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/TELEPORT",plain @@ -11,7 +11,16 @@ lda #$60 sta $548B jsr $52D1 ; decompress - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $41D1 ; patch - don't decrease lives + sta $507C ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $803 !if * > $1C0 { diff --git a/src/prelaunch/teritory.a b/src/prelaunch/teritory.a new file mode 100644 index 000000000..196890e78 --- /dev/null +++ b/src/prelaunch/teritory.a @@ -0,0 +1,47 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/TERITORY",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #callback1 + sta $6066 + jmp $6000 ; decompress + +callback1 + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$4C + sta $56B6 + lda #callback2 + sta $56B8 ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + + lda #0 +jmp60 + jmp $60 + +callback2 + lda #$a5 + sta $4F70 ; patch - don't decrease lives + lda $c4 + bmi jmp60+1 ; patch - don't decrease time + dec $c4 + bne jmp60+1 ++ jmp $56BA + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/the.goonies.a b/src/prelaunch/the.goonies.a index 7499f3d59..feb5a2f34 100644 --- a/src/prelaunch/the.goonies.a +++ b/src/prelaunch/the.goonies.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2019 by qkumba +;(c) 2019, 2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/THE.GOONIES",plain @@ -7,8 +7,29 @@ !source "src/prelaunch/common.a" + +ENABLE_ACCEL +USES_TEXT_PAGE_2 - jmp $1000 + lda #$60 + sta $1045 + jsr $1000 ; decompress + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #callback + sta $624 ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + lda #0 + jmp $55C + +callback + lda #$ad + sta $9F1 ; patch - don't decrease lives + jmp $800 !if * > $1C0 { !error "code is too large, ends at ", * diff --git a/src/prelaunch/the.snapper.a b/src/prelaunch/the.snapper.a new file mode 100644 index 000000000..4edad2e47 --- /dev/null +++ b/src/prelaunch/the.snapper.a @@ -0,0 +1,30 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/THE.SNAPPER",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #$60 + sta $2049 + jsr $2000 ; decompress + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$a5 + sta $8AA ; patch - don't decrease lives + sta $1672 ; patch - don't increase lives + dec $920 ; patch - don't decrease time ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + + jmp ($20) + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/thief.a b/src/prelaunch/thief.a new file mode 100644 index 000000000..b90067784 --- /dev/null +++ b/src/prelaunch/thief.a @@ -0,0 +1,29 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/THIEF",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #$60 + sta $4BA3 + jsr $4B50 ; decompress + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $4873 ; patch - don't decrease lives + sta $6215 ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + + jmp $4000 + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/time.pilot.a b/src/prelaunch/time.pilot.a new file mode 100644 index 000000000..147b0d0ec --- /dev/null +++ b/src/prelaunch/time.pilot.a @@ -0,0 +1,22 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/TIME.PILOT",plain +*=$106 + + !source "src/prelaunch/common.a" + + lda #$60 + sta $47CD + jsr $472D ; decompress + +GET_MACHINE_STATUS + and #CHEATS_ENABLED + beq + + dec $A5E ; patch - don't decrease lives ++ + jmp $D566 + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/tom.sawyer.a b/src/prelaunch/tom.sawyer.a new file mode 100644 index 000000000..90a6a4850 --- /dev/null +++ b/src/prelaunch/tom.sawyer.a @@ -0,0 +1,33 @@ +;license:MIT +;(c) 2022 by qkumba + +!cpu 6502 +!to "build/PRELAUNCH.INDEXED/TS",plain +*=$106 + + !source "src/prelaunch/common.a" + + +ENABLE_ACCEL + lda #callback + sta $2070 + jmp $2000 ; decompress + +callback + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $7301 ; patch - don't increase lives + sta $7322 ; patch - don't decrease lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + + jmp $4071 + +!if * > $1C0 { + !error "code is too large, ends at ", * +} diff --git a/src/prelaunch/torax.a b/src/prelaunch/torax.a index af62cf301..ee2eb760a 100644 --- a/src/prelaunch/torax.a +++ b/src/prelaunch/torax.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba +;(c) 2021-2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/TORAX",plain @@ -11,7 +11,15 @@ lda #$60 sta $2086 jsr $2000 ; decompress - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $6183 ; patch - don't decrease lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE ldy #$20 jmp $2088 diff --git a/src/prelaunch/track.attack.a b/src/prelaunch/track.attack.a index b118d97ee..6772fa69b 100644 --- a/src/prelaunch/track.attack.a +++ b/src/prelaunch/track.attack.a @@ -26,7 +26,19 @@ callback tax pla jsr $400 - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda $9FC + cmp #$C6 + bne + + lda #$A5 + sta $9FC + sta $10E4 ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $800 !if * > $1C0 { diff --git a/src/prelaunch/treasure.dive.a b/src/prelaunch/treasure.dive.a index 34c755eaf..6067d4a57 100644 --- a/src/prelaunch/treasure.dive.a +++ b/src/prelaunch/treasure.dive.a @@ -33,7 +33,14 @@ callback_e lda #1 sta $BE60 - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + dec $8521 ; patch - don't decrease lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $D566 diff --git a/src/prelaunch/trolls.tribs.a b/src/prelaunch/trolls.tribs.a index 0ae6988cc..273da90d9 100644 --- a/src/prelaunch/trolls.tribs.a +++ b/src/prelaunch/trolls.tribs.a @@ -13,6 +13,15 @@ lda #1 sta $6056 +LC_REBOOT + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$a5 + sta $60CB ; patch - don't decrease lives + sta $6564 ; patch - don't decrease weapon + sta $656D ; patch - don't decrease weapon + sta $8257 ; patch - don't increase lives ++ jmp $6000 !if * > $1C0 { diff --git a/src/prelaunch/tsunami.a b/src/prelaunch/tsunami.a index 5a0232480..212cf260a 100644 --- a/src/prelaunch/tsunami.a +++ b/src/prelaunch/tsunami.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba +;(c) 2021-2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/TSUNAMI",plain @@ -11,7 +11,17 @@ lda #$4C sta $7703 jsr $6BEC ; decompress - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $17A8 ; patch - don't decrease lives + sta $1916 ; patch - don't increase lives + sta $1761 ; patch - don't decrease fuel ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $A0ED !if * > $1C0 { diff --git a/src/prelaunch/tunnel.terror.a b/src/prelaunch/tunnel.terror.a index eea49a050..d011acd35 100755 --- a/src/prelaunch/tunnel.terror.a +++ b/src/prelaunch/tunnel.terror.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2019 by Frank M. +;(c) 2019, 2022 by Frank M., qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/TUNNEL.TERROR",plain @@ -12,7 +12,17 @@ lda #$A4 sta $6E15 ; to $3F4 (doesn't change $3F2) - jmp $4000 + lda #$60 + sta $4026 + jsr $4000 + + +GET_MACHINE_STATUS + and #CHEATS_ENABLED + beq + + lda #$a5 + sta $E3A ; patch - don't decrease lives ++ + jmp $e00 !if * > $1C0 { !error "code is too large, ends at ", *