HockeyGirl87 Posted July 1, 2007 Report Posted July 1, 2007 Okay, so I have a little bit of free time from my main Gens 94 hack I've been working on, so I decided to do a real quick side project with the SNES version of 94, my only problem is that I don't know how to fix the checksum errors in that. So if anyone knows how to do that, could someone please tell me how to? Thanks in advance. Quote
halifax Posted July 1, 2007 Report Posted July 1, 2007 I think Xstioph has spent the most time lately looking into editing for SNES....he may be able to help. good luck! im dying to see another snes hack. Quote
Xstioph Posted July 1, 2007 Report Posted July 1, 2007 I haven't looked at it at all, since it doesn't create any problems that I've noticed.. What happens on genesis when the checksum is incorrect? I've been looking at the checksum guide, but haven't tried to "translate" it to SNES since it doesn't seem to matter... I might be wrong. Maybe wboy can shed some light on this. But if you need other info just hit me up on aim or pm me for my msn preferably... Offsets, and stuff like that for team data perhaps... But if you're familiar with the gens hex code, the transition should be much trouble. It's basically the same... Quote
Xstioph Posted August 30, 2007 Report Posted August 30, 2007 Hay ho... Found a Checksum fixer: http://stealth.romhack.net/Docs/Docs.htm "Ips patcher/Creator and Checksum recalculator" Tried it and it worked nicely. Edit.. Checksum offset is located at 33244 and is 4 bytes. Quote
trudatman Posted September 8, 2010 Report Posted September 8, 2010 I tried to use the checksum editor, but I couldn't understand it, at all. could this be explained in more detail? I believe this would need to be done in order to create cartridges, so I'd like to learn this, eventually. holler. Quote
smozoma Posted September 8, 2010 Report Posted September 8, 2010 I tried to use the checksum editor, but I couldn't understand it, at all. could this be explained in more detail? I believe this would need to be done in order to create cartridges, so I'd like to learn this, eventually. holler. when things aren't immediately obvious, experiment say.. click File Quote
trudatman Posted September 8, 2010 Report Posted September 8, 2010 I experimented with it... but I still couldn't figure out what I was doing. Quote
smozoma Posted September 9, 2010 Report Posted September 9, 2010 I experimented with it... but I still couldn't figure out what I was doing. what options are under the File menu? Quote
trudatman Posted September 9, 2010 Report Posted September 9, 2010 (edited) word. not sure what I was doing before, but, yeah. tough to miss, yet somehow I did. Edited September 9, 2010 by trudatman Quote
Europia79 Posted January 22, 2022 Report Posted January 22, 2022 Load the ROM in snes9x and click File -> Rom Information. For NHL94, it says the header checksum is 9B52 and the header checksum compliment is 64AD. Open it up in a hex editor & search for AD64529B and you'll see that the checksum compliment is at 7FDC & the checksum is right next to it, at 7FDE (however, these offsets will be different if your ROM has the blank header at the beginning of the file that some ROMs do). The checksum compliment equals FFFF minus the checksum value from snes9x ROM info. There are tools out there that can fix the checksum for you, but they don't always work (which is why it's good to know how it's done). For example, there are some 8 MB Final Fantasy hacks that have the checksum artifact in two locations as a result of the rom expansion... So, to fix it, you have to fix it in two different locations. Quote
Europia79 Posted March 14 Report Posted March 14 Sorry, I explained the manual process poorly, but here's a list of checksum applications (in order of preference): https://ucon64.sourceforge.io/ https://github.com/pinobatch/lorom-template/blob/master/tools/fixchecksum.py https://www.romhacking.net/utilities/1479/ https://www.romhacking.net/utilities/1638/ https://www.romhacking.net/utilities/1696 https://www.romhacking.net/utilities/499/ Altho, please be careful, because some are flagged on Virustotal as "suspicious": Probably just "false positives", but FYI that I did recompile #3 (1479) because the author's Visual Studio was injecting extra calls into the binary (that were removed by using g++). As far as the manual process, you can use Snes9x or NSRT to get the correct checksum. Then, to get the checksum inverse (or "compliment"), you just use "XXXX XOR FFFF =" in Windows Calculator (Programmer Mode). And with a Hex Editor, a Checksum of 1234 and Inverse of EDCB would be written as "CB ED 34 12". And for ExHiRoms (greater than 4 mb), you only need to write once to 40FFDC (not twice to FFDC). All of the above programs implement this differently: The top two leave FFDC alone. #3 writes "FF FF 00 00" to FFDC. #4 does the write twice method (same value). And I don't think #5 & #6 can handle these ExHiRoms. Lemme know if anyone needs help with the CLI (Command Line Options). Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.