diff --git a/res/GAMES.CONF b/res/GAMES.CONF index a96b934fd..9925eb70f 100755 --- a/res/GAMES.CONF +++ b/res/GAMES.CONF @@ -37,7 +37,7 @@ 1011,BRUCE.LEE 1001,BUBBLE.BOBBLE 0001,BUCK.ROGERS=Buck Rogers: Planet of Zoom -0002,BURGERTIME=BurgerTime +0003,BURGERTIME=BurgerTime 0001,BUZZARD.BAIT 0110,CALI.GAMES=California Games 0001,CANNONBALL.BLTZ=Cannonball Blitz @@ -52,7 +52,7 @@ 1000,CHOPLIFTER 0010,COLUMNS 0101,COMMANDO -0002,CONAN +0003,CONAN 0001,CONGO.BONGO 0001,CRAZY.MAZEY 0001,CRIME.WAVE @@ -65,7 +65,7 @@ 1000,DAVIDS.MAGIC=David's Midnight Magic 0110,DEATH.SWORD 1001,DEFENDER -0114,D.GENERATION=D-Generation +0115,D.GENERATION=D-Generation 0001,DIAMOND.MINE 0001,DIG.DUG 1001,DINO.EGGS @@ -103,14 +103,14 @@ 0001,HARD.HAT.MACK 0000,HEAD.ON 1110,HEAVY.BARREL -1002,H.E.R.O +1003,H.E.R.O 0000,HIGH.RISE 0000,HORIZON.V 0001,HUNGRYBOY 0000,HYPER.HEAD.ON 0100,IKARI.WARRIORS 1000,IMPOSSIBLE.MISS=Impossible Mission -0114,IMPOSSIBLE.M.II=Impossible Mission II +0115,IMPOSSIBLE.M.II=Impossible Mission II 0110,INDIANA.JONES 1000,INTL.GRAN.PRIX=International Gran Prix 0111,EAGLES.NEST=Into the Eagle's Nest @@ -182,13 +182,13 @@ 1000,RED.ALERT 1110,RENEGADE 0000,REPTON -0004,RESCUE.RAIDERS +0005,RESCUE.RAIDERS 0000,RIBBIT 0000,ROADBLOCK 0110,ROBOCOP 0000,ROBOTRON.2084 0000,RUSSKI.DUCK -0000,SABOTAGE +0002,SABOTAGE 0001,SAMMY.LIGHTFOOT 0001,SARACEN 0000,SEA.DRAGON @@ -208,7 +208,7 @@ 1000,SPACE.EGGS 0000,SPACE.QUARKS 0000,SPACE.RAIDERS -0004,SPARE.CHANGE +0005,SPARE.CHANGE 0000,SPDWAY.CLASSIC=Speedway Classic 0110,SPIDERBOT 0000,SPIDER.RAID @@ -232,7 +232,7 @@ 0000,SWASHBUCKLER 0000,TAG.TEAM=Tag Team Wrestling 0001,TAPPER -0113,TECHNOCOP=TechnoCop +0114,TECHNOCOP=TechnoCop 0010,TETRIS 0000,THE.BILESTOAD 0110,SUMMER.EDITION=The Games: Summer Edition @@ -277,9 +277,10 @@ # D=cheat mode category # 0=no cheats (yet!) # 1=infinite lives -# 2=infinite lives & weapons -# 3=invincibility -# 4=has in-game cheats +# 2=infinite weapons +# 3=infinite lives & weapons +# 4=invincibility +# 5=has in-game cheats # # if no name, it will be calculated from the directory when we need to display it # diff --git a/src/prelaunch/sabotage.a b/src/prelaunch/sabotage.a index 0b8164cd4..f2d6f517a 100755 --- a/src/prelaunch/sabotage.a +++ b/src/prelaunch/sabotage.a @@ -21,6 +21,14 @@ ; re-patch reset vector +RESET_VECTOR $100 + +READ_RAM2_NO_WRITE + lda MachineStatus + and #CHEATS_ENABLED + beq + + lda #$60 + sta $5BE6 ; patch - don't decrease ammo ++ + +READ_ROM_NO_WRITE jmp $42BC !if * > $1C0 { diff --git a/src/ui.overlay.a b/src/ui.overlay.a index e428b48f1..deef1ae93 100644 --- a/src/ui.overlay.a +++ b/src/ui.overlay.a @@ -20,10 +20,11 @@ ReturnToPlay !byte $0D !text " to play" -kCheatsEnabled = 5 ; index of 'cheats enabled' string in following table +kCheatsEnabled = 6 ; index of 'cheats enabled' string in following table kCheatDescriptionLo !byte sNoCheats !byte >sInfiniteLives + !byte >sInfiniteWeapons !byte >sInfiniteLivesAndWeapons !byte >sInvincibility !byte >sInGame @@ -45,6 +47,13 @@ sInfiniteLives !text "infinite lives" !text " " !byte $16 ; bolt character +sInfiniteWeapons + !byte 20 ; length + !byte $16 ; bolt character + !text " " + !text "infinite weapons" + !text " " + !byte $16 ; bolt character sInfiniteLivesAndWeapons !byte 28 ; length !byte $16 ; bolt character