How to hack cheat codes into your Sonic CD ISO Version 0.6 July 30, 2004 UPDATE: Changed doc so that it applies to the full USA version of Sonic CD (instead of only 510 Beta version) and a few other tid bits. This original document was written by: Tony Hedstrom t_hedstrom@yahoo.com www.angelfire.com/games2/codehut This tutorial will explain how to hack your Sonic CD game (ISO) so that you will have cheats like: "Don't lose rings when hit" and "Mega jump" permanently hacked into your game. I will add more cheats if I get enough feed back. The method described below will only work if you are playing Sonic CD on a computer (with an emulator) and have your Sonic CD ISO on your hard drive. It won't work if you're Sonic CD ISO is on a disc (CD). Also note that I have only tried this method on the full Sonic CD USA version ISO, and it worked perfectly. It may or may not work on other versions. If you have the Sonic CD 510 Beta ISO, see the note at the end of this tutorial. Also, the hacks listed below only work on the first few levels (Palm Tree Panic), but you should be able to get the hacks to work on the rest of the game by choosing "continue" at the title screen. You can get Sega CD emulators from: zophar.net The Sonic CD ISO (game) can be a little hard to find because the sites that have them usually don't last very long. I suggest using your favorite search engine (google, etc). If you still can't find it, try going to the message boards at places like GSCentral.com and asking people there, that's how I found mine. You'll need to know how to edit with a hex editor to use this doc, so if you've never used a hex editor before, I recommend using the "Help" file that comes with most hex editors. Editing with a hex editor is fairly simple, so there shouldn't be any problems. One thing I need to stress before we begin... Make sure that you make a backup copy of your game (ISO) before you make any changes to it, just incase anything goes wrong. OK, lets get to the fun part of this doc... Hacking! "Don't lose rings when hit" hack.... We'll start off with hacking your ISO so that you won't lose any rings when you're hit. Open your Sonic CD ISO with a hex editor (I use Hex Workshop, get a free trial version from bpsoft.com). Once you're in the hex editor, click on "Edit / Find". When the "Find" window opens, make sure that "Hex" is checked under "Value", and that "Down" is checked under "Direction". Where is says "Find What", type in 33FC000000FF1512, then click on "Find Next". When it finds the 1st match, use your keyboard and change the 33FC to 6006. So the string you just searched for should now look like this: 6006000000FF1512. Save the changes and close the hex editor. Open the hacked ISO file with your favorite Sega CD emulator and see if the hack works. If you're curious, here's what we just did... 33FC000000FF1512 is M68K assembly language (that's the computer language that the Sega CD system understands). Here's what 33FC000000FF1512 does... If Sonic gets hit, "33FC" tells the game to move "0000" to this RAM address: "00FF1512". 00FF1512 is the RAM address for how many rings you have. Obviously, if 0000 is moved into your ring RAM address, then you will have 0000 rings. When we changed the 33FC to 6006, we told the game to branch, or skip over that part, so now the game won't put 0000 into your ring RAM address. Remember, the above hack only works on the first few levels, or if you continue a game. I may add instructions on how to get it to work on the whole game in a future update. Here's another interesting way we can change the programming above so that Sonic's ring count goes to 99 when ever he's hit. Instead of changing the 33FC to 6006, change the 0000 to 0063. So your string would look like this after you change it: 33FC006300FF1512. Save your changes, exit the hex editor, fire up your emulator, and see if your hack works. What this does, is it tells the game that if Sonic gets hit, move "0063" to your ring count RAM address. If you know anything about hex, then you know that 63 in hex = 99 in decimal. If you want, you can change the "0000" to any number you want from 0001 to 00FF, and you'll get that many rings (from 1 to 255) anytime you're hit. "Mega Jump" hack.... Now lets see how to hack you Sonic CD game so that Sonic has mega jump. Open up your Sonic CD ISO file with a hex editor. Click on "Edit / Find". When the "Find" window opens, make sure that "Hex" is checked under "Value", and that "Down" is checked under "Direction". Where is says "Find What", type in 06680038, then click on "Find Next". When it finds the 1st match, use your mouse and click on the 38, then use your keyboard and change the 38 to 18. So the string you just searched for should now look like this after the changes: 06680018. Save your changes, exit the hex editor and fire up your emulator to see if the hack worked. Sonic should now jump MUCH higher than normal. If you want, you can change the "38" part from above to other values besides 18 to get Sonic to jump higher or lower. The lower the number, the higher Sonic will jump. Well, I hope your hacking was successful. If I get enough feed back on this doc, I'll add more cheat hacks in the future. Remember, I've only tried these hacks on the full Sonic CD USA version of the game, so I don't know if they'll work on other versions. If the hacks don't work for you, please email me with all the details (which version you have, etc). I may add instructions on how to get the hacks to work on the entire game in a future update. If you're the adventurous type, you can try changing every occurrence of the hex strings mentioned above. That may do the trick. NOTE: If you have the Sonic CD 510 Beta ISO, use this string when doing the "Don't lose rings when hit" hack: 33FC000000FF1220. The "Mega Jump" hack works the same for the Beta or the full USA version. For the record, I used Gens V2.10 emulator, and Hex workshop ver 2.54. Tony Hedstrom t_hedstrom@yahoo.com Visit my web site for more hacking tutorials, and lots of home made Game Genie codes... www.angelfire.com/games2/codehut