![]() |
| Register | Login | |||||
|
Main
| Memberlist
| Active users
| Calendar
| Chat
| Online users Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album |
|
| | |||
| Acmlm's Board - I3 Archive - - Posts by Tony Hedstrom |
| User | Post | ||
|
Tony Hedstrom Newcomer Since: 01-06-06 Last post: 6280 days Last view: 6280 days |
| ||
| I found some FF3j ROM data a few years ago. My list is pretty short compared to the stuff that's already here. Most of the stuff in my list is already posted here, but I do have some specific byte data that's not listed here yet, so I'll go ahead and post it.
Tony H. P.S. I edited out some of the duplicate data. ---------------------- Version 0.7 June 13 2001 Final Fantasy 3j (NES) ROM addresses..... $21D90(?) to ??? Price for every item in the game. This includes weapons, armor, items, magic spells, etc. (2 bytes for each item.) I'm not 100% sure that $21D90 is the correct starting address, but I am 100% sure that $21E4C is the right address for the price of the Knife. If you set all the bytes to "00", then everything in the game will cost nothing. $59CD5 to $59CD9 What items are for sale in the Weapon Shop in Ur. All of the other shops for all of the other towns are near by this address, but I haven't finished figuring it out yet. By changing the value at each byte, you can buy ANY item you want in that shop. $60010 to $60E7F Enemy stats (16 bytes for each enemy). Determines what spells they cast, what spells they're weak against, etc. (2nd and 3rd bytes are HP). Set the 2nd byte to "01", and the 3rd byte to "00", and that enemy (or boss) will only have 1 HP. $61410 to ??? Weapon stats (8 bytes for each weapon). 2nd byte is hit%, 3rd byte is ATK, 5th byte is magic cast. Also, I'm pretty sure that the armor stats are after these. $61C68 to ??? How much gold you get after battle for specific enemies (2 bytes for each enemy). Set them all to "FF" and you will get $65,000 for each enemy you defeat in battle. $72010 to $720BF Character stats (8 bytes for each job). First byte is just an I.D. number (I think), 2nd byte is exp needed to change to that job, 3rd byte is Strength, 4th byte is Agility, 5th byte is Vitality, 6th byte is Intellect, 7th byte is Spirit, and the 8th byte determines how much MP they get for each level (MP can be changed in many different ways). First 8 bytes are for OnionKids, 2nd 8 bytes are for Fighters, 3rd set of 8 bytes are for Monks, 4th set of 8 bytes are for WhiteWizs, etc. $720C0 to $721E5 Experience needed for each level (3 bytes for each level). I'm pretty sure that if you change all of these bytes to "00", except $721E3 (set it to "02"), you will be able to level-up to the highest level possible in the game after your very first battle. $73BE8 to $73BE9 Starting HP for all 4 characters. $73C00 to $73C06 What all 4 starting characters are equipped with (weapons and armor). Altering these will let OnionKids start the game with ANY weapon or armor equipped! If I remember correctly, the 1st, 2nd and 3rd bytes are for armor, the 4th is for the right hand, the 5th is for quantity of the 4th byte, the 6th byte is for the left hand, and the 7th byte is for quantity of the 6th byte. $73C07 to $73C0E Determines what spells you start the game with. One byte for each level of magic. By using different values, you can get ANY magic spells you want (even call magic). $7ABAB Change the "8D" to "AD" and you'll have infinite capacity points. $7B0C0 Change the "E5" to "EA" and you'll have infinite gold. (you won't get charged in shops). (edited by Tony Hedstrom on 01-06-06 09:34 PM) |
|||
|
Tony Hedstrom Newcomer Since: 01-06-06 Last post: 6280 days Last view: 6280 days |
| ||
| Hacking a Sega Genesis Game Genie code into a Genesis ROM is fairly straight forward. Just convert the GG code into hex (with one of several GG to hex conversion programs), then open the Genesis ROM with a hex editor and go directly to the address given to you by the conversion program. There is no ROM "header" added by a copier, so you don't have to worry about that.
There are a couple things you need to watch out for... 1) Make sure your ROM is in "bin" format. There are conversion programs if it's not. The best way to know for sure if a ROM is in bin format, is to open it with a hex editor and see if you can see the title of the game in plain ASCII text at the beginning of the ROM ($0000120). If you don't see the text, it's not in bin format. I've run across several ROMs that have a "bin" file extension, but are actually in "smd" format. 2) Remember that unlike NES or SNES, all Genesis assembly instructions are 2 bytes long (NES and SNES are only one byte). And all instructions start at even numbered ROM addresses. This is why Genesis Game Genie's have 32 characters to choose from when making codes, while NES and SNES Game Genie's only have 16. This is also why Genesis Game Genie codes that are converted to hex will have 2 bytes for the value part of the code (ie. aaaaaa:xxxx). Hope that helps. Tony H. |
|||
|
Tony Hedstrom Newcomer Since: 01-06-06 Last post: 6280 days Last view: 6280 days |
| ||
| LocalH: Hacking RAM addresses into the ROM sounds interesting, I'll have to give that a try.
BloodRevolver: One thing I forgot to mention before... If you hack a Game Genie code into a Genesis ROM, there's a chance that you'll get a blank black or red screen when you try to run the game. This is because the game has failed the checksum routine (because you changed the ROM). Many Genesis games have a checksum routine. Luckily, it's fairly easy to fix this problem. If you look in the Galoob Game Genie code book (or at Game Genie code sites online), you'll see that lots of Genesis games have "Master Codes". Master codes disable/bypass checksum routines. So if the game you're hacking already has a master code, just hack it into the ROM and you're good to go. If your game doesn't have a master code, figuring out how to kill the checksum routine is relatively easy. In short, you're usually looking for a CMP (compare) with either a BNE or BEQ after it. A disassembler is a good idea here, but you only need to disassemble a very small part of the ROM to figure out how to disable/bypass the checksum. Here are my own personal findings with checksum routines. This will tell you where to look in the ROM (ie. which part to disassemble)... As far as I know, all EA games (Electronic Arts) use a checksum routine. All EA games have their checksum routine near the very end of the ROM (right before all the FFFF's). If you disassemble the last $100 bytes or so of actual code (ie. no FFFF's), you should be OK. All other games that use a checksum routine will almost always have it near the very beginning of the ROM, usually somewhere around the $300 ~ $350 area. Disassembling the first $800 bytes should be good enough. All checksum routines can be disabled by changing a single instruction (2 bytes). You'll either use a NOP (4E71) or a BRA (60xx) as a replacement instruction. If you want more info on this, let me know and I'll post a doc that I wrote that explains it in much more detail. I even wrote about a way to find out which instruction to change (to kill the checksum routine) without having to use a disassembler (you use a hex editor instead), although the disassembler is still the best method. You can even use the debugger in Gens to figure out how to kill the checksum routine, but the other methods are easier. Damn, I wasn't planning on writing that much. Tony H. (edited by Tony Hedstrom on 01-30-06 10:22 PM) |
|||
|
Tony Hedstrom Newcomer Since: 01-06-06 Last post: 6280 days Last view: 6280 days |
| ||
| Assuming you're talking about Sonic 2 for Genesis, just hack this into your ROM and it will bypass the checksum routine...
$000344:6004 Tony H. Edit: Forgot there are 2 versions of Sonic 2. If that doesn't work, let me know and I'll get the other ROM and make a new "Checksum killer". (edited by Tony Hedstrom on 02-10-06 08:33 PM) |
| Acmlm's Board - I3 Archive - - Posts by Tony Hedstrom |