Sega Genesis 'Game Code Modifications' :p

Started by Saturn, November 02, 2015, 04:27:34 AM

Previous topic - Next topic

Saturn

Here are some hacks I did to a few personal favorites 8)
Back up your rom (legally dumped from your collection, and all that) then open it with a hex editor, search for the strings and make changes as illustrated then quick save to play in Fusion or on flash cart with the cheats embedded.

Edit
Only tested on NTSC versions

Contra Hard Corps
[spoiler]Invulnerable P1/P2: 1 instance
Search: 42A9000261004D0C4E75534033400058
Change: 42A9000261004D0C4E75534033406004

Infinite Lives/Bombs P1/P2: 1 instance
Search: 000600063546000A36690064532B0011
Change: 000600063546000A36690064532B6004[/spoiler]

Ghouls and Ghosts
[spoiler]Infinite Time:
Search: 70007201102D3049670881011B403049
Change: 70007201102D3049670881011B406004

Invulnerable (can still fall or get crushed):
Search: 000084EE3338206D334C4ED0536D3318
Change: 000084EE3338206D334C4ED0536D6004

Infinite Lives:
Search: 11FC0000F6004E75226D32CE53290013
Change: 11FC0000F6004E75226D32CE53296004

Never Lose (current) Armor:
Search: 8000F72E137C00010011137C00010012
Change: 8000F72E137C00010011137C00016004[/spoiler]

Golden Axe 3
[spoiler]Infinite Lives:
Search: 670E5328013C
Change: 670E53286004

Infinite Health:
Search: E24193290142
Change: E24193296004

Invulnerability: Have to die by being beat to death once per stage before it triggers. Won't work with Infinite Health
Search: 0001114000A8
Change: 000111406004

Infinite Magic:
Search: 000693280140
Change: 000693286004[/spoiler]

Gunstar Heroes
[spoiler]Infinite Health:
00144A2C00CC6A000004E244996C0024
00144A2C00CC6A000004E244996C6004

Infinite Health 2:
6700FA526000FAAE4E75046D00140024
6700FA526000FAAE4E75046D00146004

Inf Health 3:
A01C064000103B400014046D00140024
A01C064000103B400014046D00146004

Invulnerable:
00764E754A6D007C6700002C536D007C
00764E754A6D007C6700002C536D6004

Infinite Time in Maze (boss):
004E7400760078001B42004D1B43004C
004E7400760078001B42004D1B436004[/spoiler]

Vectorman
[spoiler]Infinite Time: E891
Search: 08F80007E87E11FC003BE8925338E891
Change: 08F80007E87E11FC003BE89253386004

Infinite Lives:
Search: 0042426C0044422C00664E755378E87C
Change: 0042426C0044422C00664E7553786004

Infinite Health:
Search: 4EB900069FA44CDF0030600A9178E878
Change: 4EB900069FA44CDF0030600A91786004

Infinite Special Weapon on pickup:
Search: 0005E87E4E750103070F1F005378E886
Change: 0005E87E4E750103070F1F0053786004

Keep Multiplier:
Search: 000A000001904A78E88267785378E882
Change: 000A000001904A78E882677853786004[/spoiler]

Vectorman 2
[spoiler]Infinite Time:
Search: 08F80007E9C011FC003BE9D45338E9D3
Change: 08F80007E9C011FC003BE9D453386004

Infinite Lives:
Search: 0042426C0044422C00664E755378E9BE
Change: 0042426C0044422C00664E7553786004

Infinite Health:
Search: 4EB90005997A4CDF0030600A9178E9BA
Change: 4EB90005997A4CDF0030600A91786004

Keep Multiplier:
Search: 0000000A012C4A78E9C467785378E9C4
Change: 0000000A012C4A78E9C4677853786004

Infinite Special Weapon on pickup:
Search: 0005E9C04E750103070F1F005378E9C8
Change: 0005E9C04E750103070F1F0053786004[/spoiler]

Castlevania Bloodlines:
[spoiler]Infinite Health after first hit: (resets every screen)
Search: 0C4100516D04323C005033C100FF9C10
Change: 0C4100516D04323C005033C100FF6002

Unlimited Spec Weapon:
Search: 0064143900FFFB0E850113C200FFFB0E
Change: 0064143900FFFB0E850113C200FF6002

Invul after 1st hit: (resets every screen and can't pick up items once active so make sure you have an awesome special weapon before going limp lol)
Search: 302D003E0C400080644E537900FF9CC8
Change: 302D003E0C400080644E537900FF6004[/spoiler]

Strider:
[spoiler]Infinite Time:
Search: 8680868023FC70B2000300C000042480
Change: 8680868023FC70B2000300C000046002

Infinite Lives:
Search: FD18FC004E755238FC0060045338FC00
Change: FD18FC004E755238FC00600453386002

Infinite Health after 3rd hit: (resets each level)
Search: 4EB9000201A24EB9000015B65238FC4E
Change: 4EB9000201A24EB9000015B652386002
Change 3rd instance only (life bars will deplete completely)

Invulnerable after 1st hit: (resets each level)
Search: 00014A78FC38660000044E755378FC4C
Change: 00014A78FC38660000044E7553786002[/spoiler]

Strider 2:
[spoiler]Infinite Time:
Search: 13FC000100FFF52C43F900FFF52D8109
Change: 13FC000100FFF52C43F900FF60028109

Infinite Lives:
Search: 000032024EB90001AABA537900FFF5D8
Change: 000032024EB90001AABA537900FF6002

Invulnerability after 1st hit:
Search: 4A3900FFC197670000E4533900FFC197
Change: 4A3900FFC197670000E4533900FF6002[/spoiler]

Splatterhouse 3:[spoiler]

Infinite Health (normal):
Search: 00 01 08 07 00 0E 66 00 00 0C 91 79 00 FF 00 B2
Change: 00 01 08 07 00 0E 66 00 00 0C 91 79 00 FF 60 02

Infinite Health (power):
Search: 00 FF 60 02 60 00 00 0A E2 88 91 79 00 FF 00 B2
Change: 00 FF 60 02 60 00 00 0A E2 88 91 79 00 FF 60 02

Infinite POW(ER):
Search: 00 34 13 FC 00 00 00 FF 00 BC 53 79 00 FF 00 BA
Change: 00 34 13 FC 00 00 00 FF 00 BC 53 79 00 FF 60 02

Infinite Time:
Search: 00 0A 30 3C 00 00 32 3C 00 00 33 C1 00 FF 00 B6
Change: 00 0A 30 3C 00 00 32 3C 00 00 33 C1 00 FF 60 02[/spoiler]

Zombies Ate My Neighbors:[spoiler]

Infinite Health:
Search: 00 C0 4E 75 4A 6D 00 08 67 00 00 E0 53 6D 00 08
Change: 00 C0 4E 75 4A 6D 00 08 67 00 00 E0 53 6D 60 02

Infinite Bullets:
Search: 4A 6E 00 D6 66 4A 4A 75 00 36 67 46 53 75 00 36
Change: 4A 6E 00 D6 66 4A 4A 75 00 36 67 46 60 02 00 36[/spoiler]

The Lion King:
[spoiler]Infinite Health:
Search: FF FF CC F6 6F 00 00 0A 04 79 00 01 FF FF CC F6
Replace: FF FF CC F6 6F 00 00 0A 04 79 00 01 FF FF 60 04

Invulnerable:
Search: FF FF CC F6 3E 00 4A 68 00 46 67 28 53 68 00 46
Replace: FF FF CC F6 3E 00 4A 68 00 46 67 28 60 04 00 46[/spoiler]

Paperboy
[spoiler]Infinte Lives:
Search: FF FF C1 44 D0 80 41 F9 FF FF C0 4E D1 C0 53 50
Change: FF FF C1 44 D0 80 41 F9 FF FF C0 4E 60 02 53 50
2 instances, change both

Infinite Papers:
search: 20 0B 67 68 52 79 FF FF C0 4C 53 79 FF FF C0 4A
change: 20 0B 67 68 52 79 FF FF C0 4C 53 79 FF FF 60 02

Infinite Time on Training Course:
Can't do it, keeps shutting off laptop. ???[/spoiler]

Shinobi III - Return of the Ninja Master (USA) Genesis

Inf Lives:
search: 000300FF002866166030533900FF37E0
change: 000300FF002866166030533900FF6004
***********************************************************
Infinite Shuriken:
search: 660E4A7900FF37E26714537900FF37E2
change: 660E4A7900FF37E26714537900FF6004

Infinite Shuriken spray (mid-air):
search: 70014EB90000169E6B10537900FF37E2
change: 70014EB90000169E6B10537900FF6004
2 instances, change both
***********************************************************
Infinite lightning invincibility (amount left on-screen):
search: 00FF37E70C0000036706533900FF37E6
change: 00FF37E70C0000036706533900FF6004

Infinite hits to a single lightning invincibility shield:
search: 00FB0EFF00284A680030672453680030
change: 00FB0EFF00284A680030672453686004
***********************************************************
Infinite health:
search: 0C39005200FF000B670613C000FF37E9
change: 0C39005200FF000B670613C000FF6004
***********************************************************
Invincibility (recovering from a hit/flashing):
search: 00FF37E960164A680036670C53680036
change: 00FF37E960164A680036670C53686004

Shadowrunner

Great job! How do you figure out what to change, and what to change it to? I have a hex editor for the 3DO that I've tried to play around with but never had any success.

Saturn

Thanks!
For these simple(r) systems I used a combination of Cheat Engine (to isolate the variables during play) and Hex Workshop in Windows to make edits.
I haven't been able to do rom hacks on systems for Jaguar or higher (3DO, Saturn, etc). Only RAM hacks (can only 'trap' what I need during play but it changes after powering off.) I'd asked people in the know about hacking Jaguar rom but I'm assuming it's some kind of secret.

Will be testing scanmem for Ubuntu soon so I can hopefully get back to doing this. It's fun.

Saturn

What to change it to is usually 6002 (jumps 1 byte) or 6004 (jumps 2 bytes). The code following the string creating the event is usually followed next by the part that changes it. Like health going down by 1, etc. Using one of those to jump over this part makes the health stay the same.
There's better explanations out there with all the technical jargon but in the end this is pretty much what happens. I was playing GEX on 3D0 and Saturn and could freeze the life bars and other stuff but when tracing the string back to a rom location, it always went to some odd location that I couldn't do anything with.
This may be all common knowledge but hope some of it is useful.

Shadowrunner

Thanks for all the info! Sounds like I need to do some research if I want to go any further but this is a good start.

Saturn

You're welcome :)
There's tons of info out there on the process and once the steps are known it's just repetitive (but still fun). There are some games I couldn't hack but very few. I'm sure they can be hacked but I lost interest in pursuing it further due to time constraints. Here's a great place to start if interested. This guy Tony is a guru and helped me sort out a lot of info to get my hacks working correctly.

Saturn

Got tired of losing in Dragon's Fury so hacked infinite balls into the rom:

Find this hex string:
41F8F6364A78F1BC670441F8F63C5350

Change it to:
41F8F6366004F1BC670441F8F63C5350
(change both instances)

Original post updated 8)

Saturn

Bare Knuckle III (Japan)

One hit death punch and near invincibility:
Search for this hex string:
36680060302800360240003F9128006C

Change it to:
60040060302800360240003F9128006C
(change all 3 instances)

Some Bosses/mid stage bosses can inflict damage but the majority of enemies are harmless. Also, moves like suplexes won't kill an enemy in one hit. The straight up punch will though 8)

Saturn

Had a heck of a time trying to get Infinite Health on this one. Everything I edited made everyone invincible so I gave up lol


Streets of Rage 2 (USA)

Stop Timer:
Search: E3400640005CD078FC12308052403080
Change: E3400640005CD078FC12306002403080

Don't lose health using Special Punch:
Search: 000E357C0002000051EA009E516A0080
Change: 000E357C0002000051EA009E516A6002

Infinite Lives:
Search: 001E4E7508AA0004001E4E75536A0082
Change: 001E4E7508AA0004001E4E7560040082

Saturn

Ranger-X (USA)

Invulnerability (blinking):
Search: 4A7900FFF03467000008537900FFF034
Change: 4A7900FFF03467000008537900FF6004

Infinite Flying Ability:
Search: 33C000FFCC9E303900FFCC8C323C00C0
Change: 33C000FFCC9E303900FF6004323C00C0

Saturn

#10
Did these for Sonic The Hedgehog. Been ages since I played the original, what a blast 8)
Takes me back to 1991, iirc, when I got my first Genesis while waiting on the SNES to be released.

Sonic 1
[spoiler]Start with 99 lives
Search: FE1011FC000CF60011FC0003
Change: FE1011FC000CF60011FC0063

Start with 999 lives (messed up graphic)
Search: FE1011FC000CF60011FC0003
Change: FE1011FC000CF60011FC03E7

999 rings when Sonic takes damage (must have at least 1 ring when hit)
NOTE: won't work alongside Never Lose Rings and/or Infinite Rings cheats
Search: 00124442444451CDFF7631FC0000FE20
Change: 00124442444451CDFF7631FC03E7FE20

Infinite lives
Search: 00244238FE1E5238FE1C5338
Change: 00244238FE1E5238FE1C6032

Have All Chaos Emeralds
Search: 000CF60011FC0003FE127000
Change: 000CF60011FC0003FE127006

Once invincible, stay invincible to stage end or death
Search: 00004EB90000139611FC0000
Change: 00004EB90000139611FC0001

Never Lose Rings
NOTE: won't work alongside 999 Rings When Hit and/or Infinite Rings cheats
Search: 00124442444451CDFF7631FC
Change: 00124442444451CDFF766004

Infinite Rings
NOTE: won't work alongside 999 Rings When Hit and/or Never Lose Rings cheats
Search: 54280024217C0001004A0004
Change: 54280024217C0001004A00C8

Infinite Air
Search: 303C00C24EB90000139C5378
Change: 303C00C24EB90000139C6002[/spoiler]

Attached the Lunar IPS files to patch the rom. Lips can be downloaded from here.

Saturn

#11
Pulseman:
Saw this game mentioned in another post and had to try it out. First I'd heard of it. Found an English language hacked rom online and cut in the following cheats 8)

Infinite Lives: can use # of lives on screen in search
Search: 10 39 00 FF FD 44 72 01 81 01 13 C0 00 FF FD 44
Change: 10 39 00 FF FD 44 72 01 81 01 13 C0 60 02 FD 44
1 instance

Infinite Health: Full health = 771, 1 hit = 770, 2 hits = 769, dead = 668
Search: 42 39 00 FF FD 46 60 00 1B 54 53 39 00 FF FD 46
Change: 42 39 00 FF FD 46 60 00 1B 54 53 39 60 02 FD 46
1 instance


Edit; here's one more:
Infinite Time In Bonus Stages:
Search: 10 39 00 FF FA D0 72 01 81 01 13 C0 00 FF FA D0
Change: 10 39 00 FF FA D0 72 01 81 01 13 C0 60 02 FA D0
1 instance

Saturn

#12
Castlevania Bloodlines:

Infinite Health after first hit: (resets every screen)
Search: 0C4100516D04323C005033C100FF9C10
Change: 0C4100516D04323C005033C100FF6002

Unlimited Spec Weapon:
Search: 0064143900FFFB0E850113C200FFFB0E
Change: 0064143900FFFB0E850113C200FF6002

Invul after 1st hit: (resets every screen and can't pick up items once active so make sure you have an awesome special weapon before going limp lol)
Search: 302D003E0C400080644E537900FF9CC8
Change: 302D003E0C400080644E537900FF6004

Saturn

Strider:
Infinite Time:
Search: 8680868023FC70B2000300C000042480
Change: 8680868023FC70B2000300C000046002

Infinite Lives:
Search: FD18FC004E755238FC0060045338FC00
Change: FD18FC004E755238FC00600453386002

Infinite Health after 3rd hit: (resets each level)
Search: 4EB9000201A24EB9000015B65238FC4E
Change: 4EB9000201A24EB9000015B652386002
Change 3rd instance only (life bars will deplete completely)

Invulnerable after 1st hit: (resets each level)
Search: 00014A78FC38660000044E755378FC4C
Change: 00014A78FC38660000044E7553786002

Saturn

Strider 2:
Infinite Time:
Search: 13FC000100FFF52C43F900FFF52D8109
Change: 13FC000100FFF52C43F900FF60028109

Infinite Lives:
Search: 000032024EB90001AABA537900FFF5D8
Change: 000032024EB90001AABA537900FF6002

Invulnerability after 1st hit:
Search: 4A3900FFC197670000E4533900FFC197
Change: 4A3900FFC197670000E4533900FF6002