From c8f35fa33ccf9f0a19858294d24fd30a68e5bb5b Mon Sep 17 00:00:00 2001 From: Peter Ferrie Date: Thu, 5 May 2022 22:06:50 -0700 Subject: [PATCH] add some cheats --- res/GAMES.CONF | 14 ++++++------- 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/cosmic.combat.a | 19 +++++++++++++++-- src/prelaunch/crickateer.a | 13 ++++++++++-- src/prelaunch/defender.joe.holt.a | 9 +++++++- src/prelaunch/demonic.decks.a | 13 ++++++++++-- src/prelaunch/dragonfire.a | 11 ++++++++-- src/prelaunch/early.bird.a | 13 ++++++++++-- src/prelaunch/flobynoid.a | 34 +++++++++++++++++++++++++++++++ 48 files changed, 148 insertions(+), 58 deletions(-) diff --git a/res/GAMES.CONF b/res/GAMES.CONF index 6ed2a9b2b..46d4af108 100755 --- a/res/GAMES.CONF +++ b/res/GAMES.CONF @@ -112,10 +112,10 @@ 0001,CONGO.BONGO=Congo Bongo 0000,CQ=Conquering Worlds 0000,CR=Copts and Robbers -1000,COSMIC.COMBAT=Cosmic Combat +1001,COSMIC.COMBAT=Cosmic Combat 0002,COUNTY.FAIR=County Fair 0001,CRAZY.MAZEY=Crazy Mazey -0000,CRICKATEER=Crickateer +0001,CRICKATEER=Crickateer 0001,CRIME.WAVE=Crime Wave 1001,CRISIS.MOUNTAIN=Crisis Mountain 0001,CROSS.CITY=Cross City @@ -133,8 +133,8 @@ 0110,DEATH.SWORD=Death Sword 1000,DEEP.SPACE=Deep Space 1001,DEFENDER=Defender -1000,DJ=Defender (Joe Holt) -0000,DEMONIC.DECKS=Demonic Decks +1001,DJ=Defender (Joe Holt) +0001,DEMONIC.DECKS=Demonic Decks 1000,DEPTH.CHARGE=Depth Charge 0001,DIAMOND.MINE=Diamond Mine 0001,DIG.DUG=Dig Dug @@ -144,11 +144,11 @@ 0000,DOGFIGHT.II=Dogfight II 0001,DONKEY.KONG=Donkey Kong 0000,DOUBLE.TROUBLE=Double Trouble -0000,DRAGONFIRE=Dragonfire +0001,DRAGONFIRE=Dragonfire 1001,DRELBS=Drelbs 0001,DROL=Drol 0000,DUNG.BEETLES=Dung Beetles -0000,EARLY.BIRD=Early Bird +0001,EARLY.BIRD=Early Bird 0001,EI=Eggs-It 0000,EPOCH=Epoch 0000,ES=Escape! @@ -162,7 +162,7 @@ 0110,FLAPPLE.BIRD=Flapple Bird 0000,FS2=Flight Simulator II 0000,FLIP.OUT=Flip Out -0000,FLOBYNOID=Flobynoid +0001,FLOBYNOID=Flobynoid 0000,FLOPPY=Floppy 0000,FLY.WARS=Fly Wars 1101,FORCE.7=Force 7 diff --git a/src/index/artwork.idx.a b/src/index/artwork.idx.a index 4a2a98cd9..878d3161d 100644 --- a/src/index/artwork.idx.a +++ b/src/index/artwork.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11418374 + !be24 11418886 !le16 4515 diff --git a/src/index/attract.idx.a b/src/index/attract.idx.a index dd532dca3..f27f604eb 100644 --- a/src/index/attract.idx.a +++ b/src/index/attract.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11369587 + !be24 11370099 !le16 5294 diff --git a/src/index/cache00.idx.a b/src/index/cache00.idx.a index f27542962..a140ce12f 100644 --- a/src/index/cache00.idx.a +++ b/src/index/cache00.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11309949 + !be24 11310461 !le16 3654 diff --git a/src/index/cache01.idx.a b/src/index/cache01.idx.a index a3014c9d8..b317353af 100644 --- a/src/index/cache01.idx.a +++ b/src/index/cache01.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11322730 + !be24 11323242 !le16 4064 diff --git a/src/index/cache10.idx.a b/src/index/cache10.idx.a index 812bb6b85..4c4890a44 100644 --- a/src/index/cache10.idx.a +++ b/src/index/cache10.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11338770 + !be24 11339282 !le16 5245 diff --git a/src/index/cache11.idx.a b/src/index/cache11.idx.a index 26fc721b4..03692eabe 100644 --- a/src/index/cache11.idx.a +++ b/src/index/cache11.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11357284 + !be24 11357796 !le16 5870 diff --git a/src/index/coverfade.idx.a b/src/index/coverfade.idx.a index d5af9a39b..b20d65105 100644 --- a/src/index/coverfade.idx.a +++ b/src/index/coverfade.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11422889 + !be24 11423401 !le16 410 diff --git a/src/index/credits.idx.a b/src/index/credits.idx.a index cba793338..2791167f3 100644 --- a/src/index/credits.idx.a +++ b/src/index/credits.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11423643 + !be24 11424155 !le16 448 diff --git a/src/index/decrunch.idx.a b/src/index/decrunch.idx.a index d2cd1dc7f..e6934dc21 100644 --- a/src/index/decrunch.idx.a +++ b/src/index/decrunch.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11424091 + !be24 11424603 !le16 303 diff --git a/src/index/dfx.idx.a b/src/index/dfx.idx.a index f2890ebad..5262f6e40 100644 --- a/src/index/dfx.idx.a +++ b/src/index/dfx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11377027 + !be24 11377539 !le16 1242 diff --git a/src/index/dgr.fizzle.idx.a b/src/index/dgr.fizzle.idx.a index 0e6bf5016..81a560153 100644 --- a/src/index/dgr.fizzle.idx.a +++ b/src/index/dgr.fizzle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11423375 + !be24 11423887 !le16 67 diff --git a/src/index/dgr.idx.a b/src/index/dgr.idx.a index 5080dfca5..c0390418d 100644 --- a/src/index/dgr.idx.a +++ b/src/index/dgr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11418315 + !be24 11418827 !le16 59 diff --git a/src/index/dhgr.idx.a b/src/index/dhgr.idx.a index e70358a19..9515609e9 100644 --- a/src/index/dhgr.idx.a +++ b/src/index/dhgr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11416830 + !be24 11417342 !le16 1404 diff --git a/src/index/dtitle.idx.a b/src/index/dtitle.idx.a index d7addbfe6..ccbe220ef 100644 --- a/src/index/dtitle.idx.a +++ b/src/index/dtitle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11402447 + !be24 11402959 !le16 521 diff --git a/src/index/fx.idx.a b/src/index/fx.idx.a index f20186e99..e043623fc 100644 --- a/src/index/fx.idx.a +++ b/src/index/fx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11374881 + !be24 11375393 !le16 2146 diff --git a/src/index/gamehelp.idx.a b/src/index/gamehelp.idx.a index a10a28db0..00fdbb911 100644 --- a/src/index/gamehelp.idx.a +++ b/src/index/gamehelp.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11378627 + !be24 11379139 !le16 6433 diff --git a/src/index/gr.fizzle.idx.a b/src/index/gr.fizzle.idx.a index 2282b11d7..65dd5a50e 100644 --- a/src/index/gr.fizzle.idx.a +++ b/src/index/gr.fizzle.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11423299 + !be24 11423811 !le16 76 diff --git a/src/index/gr.idx.a b/src/index/gr.idx.a index 8b07d16d3..f590031d5 100644 --- a/src/index/gr.idx.a +++ b/src/index/gr.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11418234 + !be24 11418746 !le16 81 diff --git a/src/index/helptext.idx.a b/src/index/helptext.idx.a index 04b2aa5d6..44f3f4777 100644 --- a/src/index/helptext.idx.a +++ b/src/index/helptext.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11423442 + !be24 11423954 !le16 201 diff --git a/src/index/hgr0.idx.a b/src/index/hgr0.idx.a index 45a572e52..ef241a67a 100644 --- a/src/index/hgr0.idx.a +++ b/src/index/hgr0.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11402968 + !be24 11403480 !le16 4511 diff --git a/src/index/hgr1.idx.a b/src/index/hgr1.idx.a index b606d5fcd..007bed607 100644 --- a/src/index/hgr1.idx.a +++ b/src/index/hgr1.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11407479 + !be24 11407991 !le16 1591 diff --git a/src/index/hgr2.idx.a b/src/index/hgr2.idx.a index e0a956926..49e9eb0d3 100644 --- a/src/index/hgr2.idx.a +++ b/src/index/hgr2.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11409070 + !be24 11409582 !le16 1053 diff --git a/src/index/hgr3.idx.a b/src/index/hgr3.idx.a index acf27be2c..81ac77414 100644 --- a/src/index/hgr3.idx.a +++ b/src/index/hgr3.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11410123 + !be24 11410635 !le16 3237 diff --git a/src/index/hgr4.idx.a b/src/index/hgr4.idx.a index 3f968d29a..13a89481f 100644 --- a/src/index/hgr4.idx.a +++ b/src/index/hgr4.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11413360 + !be24 11413872 !le16 2877 diff --git a/src/index/hgr5.idx.a b/src/index/hgr5.idx.a index 40647ef14..d45b7ae3d 100644 --- a/src/index/hgr5.idx.a +++ b/src/index/hgr5.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11416237 + !be24 11416749 !le16 479 diff --git a/src/index/hgr6.idx.a b/src/index/hgr6.idx.a index e5440c791..4141b3161 100644 --- a/src/index/hgr6.idx.a +++ b/src/index/hgr6.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11416716 + !be24 11417228 !le16 114 diff --git a/src/index/joystick.idx.a b/src/index/joystick.idx.a index c51e200e3..07a85c715 100644 --- a/src/index/joystick.idx.a +++ b/src/index/joystick.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11424394 + !be24 11424906 !le16 2370 diff --git a/src/index/miniattract0.idx.a b/src/index/miniattract0.idx.a index 46d7211bd..b1028a4b9 100644 --- a/src/index/miniattract0.idx.a +++ b/src/index/miniattract0.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11390016 + !be24 11390528 !le16 3642 diff --git a/src/index/miniattract1.idx.a b/src/index/miniattract1.idx.a index 8c3375273..3c7a94e96 100644 --- a/src/index/miniattract1.idx.a +++ b/src/index/miniattract1.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11393658 + !be24 11394170 !le16 2795 diff --git a/src/index/prelaunch.idx.a b/src/index/prelaunch.idx.a index 3b963b1e2..7a228efb5 100644 --- a/src/index/prelaunch.idx.a +++ b/src/index/prelaunch.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11363154 + !be24 11363666 !le16 6433 diff --git a/src/index/res.cover.idx.a b/src/index/res.cover.idx.a index 7deca03a6..023657121 100644 --- a/src/index/res.cover.idx.a +++ b/src/index/res.cover.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 3697664 + !be24 3698176 !le16 8192 diff --git a/src/index/res.help.idx.a b/src/index/res.help.idx.a index 1a53d9642..d0216bc74 100644 --- a/src/index/res.help.idx.a +++ b/src/index/res.help.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 3714048 + !be24 3714560 !le16 8192 diff --git a/src/index/res.title.idx.a b/src/index/res.title.idx.a index 38ed42097..40501436f 100644 --- a/src/index/res.title.idx.a +++ b/src/index/res.title.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 3705856 + !be24 3706368 !le16 8192 diff --git a/src/index/search00.idx.a b/src/index/search00.idx.a index da1eccefe..b5af68dd7 100644 --- a/src/index/search00.idx.a +++ b/src/index/search00.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11301666 + !be24 11302178 !le16 8283 diff --git a/src/index/search01.idx.a b/src/index/search01.idx.a index 1160e6dac..2c41684a8 100644 --- a/src/index/search01.idx.a +++ b/src/index/search01.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11313603 + !be24 11314115 !le16 9127 diff --git a/src/index/search10.idx.a b/src/index/search10.idx.a index 57174f16c..b06d2358d 100644 --- a/src/index/search10.idx.a +++ b/src/index/search10.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11326794 + !be24 11327306 !le16 11976 diff --git a/src/index/search11.idx.a b/src/index/search11.idx.a index 6009e5313..d59d541e2 100644 --- a/src/index/search11.idx.a +++ b/src/index/search11.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11344015 + !be24 11344527 !le16 13269 diff --git a/src/index/sfx.idx.a b/src/index/sfx.idx.a index 9a944ec67..54dbd1c51 100644 --- a/src/index/sfx.idx.a +++ b/src/index/sfx.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11378269 + !be24 11378781 !le16 358 diff --git a/src/index/slideshow.idx.a b/src/index/slideshow.idx.a index f0385bbc2..c61ec3ebe 100644 --- a/src/index/slideshow.idx.a +++ b/src/index/slideshow.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11385060 + !be24 11385572 !le16 4956 diff --git a/src/index/title.idx.a b/src/index/title.idx.a index a31c0fe98..e57bc5be9 100644 --- a/src/index/title.idx.a +++ b/src/index/title.idx.a @@ -4,5 +4,5 @@ ; This file is automatically generated ; !byte 0 - !be24 11396453 + !be24 11396965 !le16 5994 diff --git a/src/prelaunch/cosmic.combat.a b/src/prelaunch/cosmic.combat.a index 98eb5525c..8fe3859b9 100644 --- a/src/prelaunch/cosmic.combat.a +++ b/src/prelaunch/cosmic.combat.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by Frank M. +;(c) 2021-2022 by Frank M., qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/COSMIC.COMBAT",plain @@ -8,7 +8,22 @@ !source "src/prelaunch/common.a" +NEW_RESET_VECTOR $BFF0 - jmp $1A00 + +ENABLE_ACCEL + lda #$60 + sta $1A82 + jsr $1A00 ; decompress + + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $65F2 ; patch - don't decrease lives + sta $721C ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE + jmp $D566 !if * > $1C0 { !error "code is too large, ends at ", * diff --git a/src/prelaunch/crickateer.a b/src/prelaunch/crickateer.a index 30ec4aefb..89a14d58a 100644 --- a/src/prelaunch/crickateer.a +++ b/src/prelaunch/crickateer.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba +;(c) 2021-2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/CRICKATEER",plain @@ -28,7 +28,16 @@ lda #$9A sta $1D38 sta $1D3F - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $1D31 ; patch - don't decrease lives + sta $5030 ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $813 !if * > $1C0 { diff --git a/src/prelaunch/defender.joe.holt.a b/src/prelaunch/defender.joe.holt.a index 8df4a6e47..cd36439b8 100644 --- a/src/prelaunch/defender.joe.holt.a +++ b/src/prelaunch/defender.joe.holt.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba +;(c) 2021-2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/DJ",plain @@ -13,6 +13,13 @@ jsr $2000 ; decompress lda #$88 sta $E001 + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $EE5 ; patch - don't increase lives + sta $1226 ; patch - don't decrease lives ++ jsr DisableAccelerator jmp $200 diff --git a/src/prelaunch/demonic.decks.a b/src/prelaunch/demonic.decks.a index d12982a6c..a0fc22fdc 100644 --- a/src/prelaunch/demonic.decks.a +++ b/src/prelaunch/demonic.decks.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba/Frank M. +;(c) 2021-2022 by qkumba/Frank M. !cpu 6502 !to "build/PRELAUNCH.INDEXED/DEMONIC.DECKS",plain @@ -12,7 +12,16 @@ sta $206A jsr $2000 ; decompress +NEW_RESET_VECTOR $BFF0 - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $1CE5 ; patch - don't decrease lives + sta $1E24 ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $200 !if * > $1C0 { diff --git a/src/prelaunch/dragonfire.a b/src/prelaunch/dragonfire.a index ee1e4c4ff..31e8feef5 100644 --- a/src/prelaunch/dragonfire.a +++ b/src/prelaunch/dragonfire.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by qkumba +;(c) 2021-2022 by qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/DRAGONFIRE",plain @@ -11,7 +11,14 @@ lda #$60 sta $3621 jsr $3600 ; decompress - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + dec $5401 ; patch - don't decrease lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $4000 !if * > $1C0 { diff --git a/src/prelaunch/early.bird.a b/src/prelaunch/early.bird.a index 9f798028e..29c612821 100644 --- a/src/prelaunch/early.bird.a +++ b/src/prelaunch/early.bird.a @@ -1,5 +1,5 @@ ;license:MIT -;(c) 2021 by Frank M. +;(c) 2021-2022 by Frank M., qkumba !cpu 6502 !to "build/PRELAUNCH.INDEXED/EARLY.BIRD",plain @@ -20,7 +20,16 @@ hook lda #0 lda #1 sta $BBA ; reset vector fix - +DISABLE_ACCEL + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$ad + sta $65AD ; patch - don't decrease lives + sta $6CFC ; patch - don't increase lives ++ + jsr DisableAccelerator + +READ_ROM_NO_WRITE jmp $BB0 !if * > $1C0 { diff --git a/src/prelaunch/flobynoid.a b/src/prelaunch/flobynoid.a index a98047f4a..da8ee04f1 100644 --- a/src/prelaunch/flobynoid.a +++ b/src/prelaunch/flobynoid.a @@ -17,6 +17,16 @@ sta $B63A jsr $B600 + ldx #hook_e-hook_b +- lda hook_b, x + sta $2d0, x + dex + bpl - + lda #$d0 + sta $B6D6 + lda #2 + sta $B6D7 + jsr DisableAccelerator jsr $BBB3 @@ -24,6 +34,30 @@ inc $3F4 ; reboot jmp $8003 +hook_b !pseudopc $2d0 { + pla + pla + jsr $B64F + jsr $B6D8 + ldx #$AD + lda #$CE + cmp $AD9 + bne + + stx $AD9 ; patch - don't decrease lives ++ cmp $1461 + bne + + stx $1461 ; patch - don't trigger anti-cheat ++ lda $1893 + cmp #$EE + bne + + stx $1893 ; patch - don't increase lives ++ clc + rts + !if * > $2FF { + !error "code is too large, ends at ", * + } +} +hook_e !if * > $1C0 { !error "code is too large, ends at ", * }