add cheat and new cheat category for Sabotage

This commit is contained in:
4am 2020-04-11 21:02:52 -04:00
parent 77b19f3832
commit 7a0ac9cf82
3 changed files with 31 additions and 13 deletions

View File

@ -37,7 +37,7 @@
1011,BRUCE.LEE 1011,BRUCE.LEE
1001,BUBBLE.BOBBLE 1001,BUBBLE.BOBBLE
0001,BUCK.ROGERS=Buck Rogers: Planet of Zoom 0001,BUCK.ROGERS=Buck Rogers: Planet of Zoom
0002,BURGERTIME=BurgerTime 0003,BURGERTIME=BurgerTime
0001,BUZZARD.BAIT 0001,BUZZARD.BAIT
0110,CALI.GAMES=California Games 0110,CALI.GAMES=California Games
0001,CANNONBALL.BLTZ=Cannonball Blitz 0001,CANNONBALL.BLTZ=Cannonball Blitz
@ -52,7 +52,7 @@
1000,CHOPLIFTER 1000,CHOPLIFTER
0010,COLUMNS 0010,COLUMNS
0101,COMMANDO 0101,COMMANDO
0002,CONAN 0003,CONAN
0001,CONGO.BONGO 0001,CONGO.BONGO
0001,CRAZY.MAZEY 0001,CRAZY.MAZEY
0001,CRIME.WAVE 0001,CRIME.WAVE
@ -65,7 +65,7 @@
1000,DAVIDS.MAGIC=David's Midnight Magic 1000,DAVIDS.MAGIC=David's Midnight Magic
0110,DEATH.SWORD 0110,DEATH.SWORD
1001,DEFENDER 1001,DEFENDER
0114,D.GENERATION=D-Generation 0115,D.GENERATION=D-Generation
0001,DIAMOND.MINE 0001,DIAMOND.MINE
0001,DIG.DUG 0001,DIG.DUG
1001,DINO.EGGS 1001,DINO.EGGS
@ -103,14 +103,14 @@
0001,HARD.HAT.MACK 0001,HARD.HAT.MACK
0000,HEAD.ON 0000,HEAD.ON
1110,HEAVY.BARREL 1110,HEAVY.BARREL
1002,H.E.R.O 1003,H.E.R.O
0000,HIGH.RISE 0000,HIGH.RISE
0000,HORIZON.V 0000,HORIZON.V
0001,HUNGRYBOY 0001,HUNGRYBOY
0000,HYPER.HEAD.ON 0000,HYPER.HEAD.ON
0100,IKARI.WARRIORS 0100,IKARI.WARRIORS
1000,IMPOSSIBLE.MISS=Impossible Mission 1000,IMPOSSIBLE.MISS=Impossible Mission
0114,IMPOSSIBLE.M.II=Impossible Mission II 0115,IMPOSSIBLE.M.II=Impossible Mission II
0110,INDIANA.JONES 0110,INDIANA.JONES
1000,INTL.GRAN.PRIX=International Gran Prix 1000,INTL.GRAN.PRIX=International Gran Prix
0111,EAGLES.NEST=Into the Eagle's Nest 0111,EAGLES.NEST=Into the Eagle's Nest
@ -182,13 +182,13 @@
1000,RED.ALERT 1000,RED.ALERT
1110,RENEGADE 1110,RENEGADE
0000,REPTON 0000,REPTON
0004,RESCUE.RAIDERS 0005,RESCUE.RAIDERS
0000,RIBBIT 0000,RIBBIT
0000,ROADBLOCK 0000,ROADBLOCK
0110,ROBOCOP 0110,ROBOCOP
0000,ROBOTRON.2084 0000,ROBOTRON.2084
0000,RUSSKI.DUCK 0000,RUSSKI.DUCK
0000,SABOTAGE 0002,SABOTAGE
0001,SAMMY.LIGHTFOOT 0001,SAMMY.LIGHTFOOT
0001,SARACEN 0001,SARACEN
0000,SEA.DRAGON 0000,SEA.DRAGON
@ -208,7 +208,7 @@
1000,SPACE.EGGS 1000,SPACE.EGGS
0000,SPACE.QUARKS 0000,SPACE.QUARKS
0000,SPACE.RAIDERS 0000,SPACE.RAIDERS
0004,SPARE.CHANGE 0005,SPARE.CHANGE
0000,SPDWAY.CLASSIC=Speedway Classic 0000,SPDWAY.CLASSIC=Speedway Classic
0110,SPIDERBOT 0110,SPIDERBOT
0000,SPIDER.RAID 0000,SPIDER.RAID
@ -232,7 +232,7 @@
0000,SWASHBUCKLER 0000,SWASHBUCKLER
0000,TAG.TEAM=Tag Team Wrestling 0000,TAG.TEAM=Tag Team Wrestling
0001,TAPPER 0001,TAPPER
0113,TECHNOCOP=TechnoCop 0114,TECHNOCOP=TechnoCop
0010,TETRIS 0010,TETRIS
0000,THE.BILESTOAD 0000,THE.BILESTOAD
0110,SUMMER.EDITION=The Games: Summer Edition 0110,SUMMER.EDITION=The Games: Summer Edition
@ -277,9 +277,10 @@
# D=cheat mode category # D=cheat mode category
# 0=no cheats (yet!) # 0=no cheats (yet!)
# 1=infinite lives # 1=infinite lives
# 2=infinite lives & weapons # 2=infinite weapons
# 3=invincibility # 3=infinite lives & weapons
# 4=has in-game cheats # 4=invincibility
# 5=has in-game cheats
# #
# if no name, it will be calculated from the directory when we need to display it # if no name, it will be calculated from the directory when we need to display it
# #

View File

@ -21,6 +21,14 @@
; re-patch reset vector ; re-patch reset vector
+RESET_VECTOR $100 +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 jmp $42BC
!if * > $1C0 { !if * > $1C0 {

View File

@ -20,10 +20,11 @@ ReturnToPlay
!byte $0D !byte $0D
!text " to play" !text " to play"
kCheatsEnabled = 5 ; index of 'cheats enabled' string in following table kCheatsEnabled = 6 ; index of 'cheats enabled' string in following table
kCheatDescriptionLo kCheatDescriptionLo
!byte <sNoCheats !byte <sNoCheats
!byte <sInfiniteLives !byte <sInfiniteLives
!byte <sInfiniteWeapons
!byte <sInfiniteLivesAndWeapons !byte <sInfiniteLivesAndWeapons
!byte <sInvincibility !byte <sInvincibility
!byte <sInGame !byte <sInGame
@ -31,6 +32,7 @@ kCheatDescriptionLo
kCheatDescriptionHi kCheatDescriptionHi
!byte >sNoCheats !byte >sNoCheats
!byte >sInfiniteLives !byte >sInfiniteLives
!byte >sInfiniteWeapons
!byte >sInfiniteLivesAndWeapons !byte >sInfiniteLivesAndWeapons
!byte >sInvincibility !byte >sInvincibility
!byte >sInGame !byte >sInGame
@ -45,6 +47,13 @@ sInfiniteLives
!text "infinite lives" !text "infinite lives"
!text " " !text " "
!byte $16 ; bolt character !byte $16 ; bolt character
sInfiniteWeapons
!byte 20 ; length
!byte $16 ; bolt character
!text " "
!text "infinite weapons"
!text " "
!byte $16 ; bolt character
sInfiniteLivesAndWeapons sInfiniteLivesAndWeapons
!byte 28 ; length !byte 28 ; length
!byte $16 ; bolt character !byte $16 ; bolt character