Danexmurder wrote:I've tried to do this mod using the Shining Scorpion Donor PCB but haven't had any luck. I tried using the SA-1 Origin version but couldn't get it to work. I double checked my work, tested continuity on everything but no dice. The game just hangs at the hash screen. I actually tried it on a second donor board but that didn't work either. The part I'm confused on is during the padding step. After padding it to 4mb I don't understand where to find the hashsum in Ucon64. I did fix it using the --chk command.
The Checksum I get for CRC32 is 0x4c3edb9c
I ripped my own NTSC-U version. I'm wondering if this issue has to do with the padding.
I've tried the game on my 1-chip 01 North American console and my Analogue Super NT but haven't had any luck so far. I'd appreciate some advice. Thanks!
Did you replace the SRAM chip on your game PCB with a 128KByte / 1024Kbit one as needed? Which chip did you use for it?
It's not strictly necessary to correct the SNES-specific internal ROM header checksum as real hardware does not check it. I've mentioned that step mainly for orderliness' sake, you should be able to exclude it as a source of error.* The sha1 hashsum on the other hand, as used in the opening post, provides a generic and convenient way to ascertain that the contents of two files are the same. You can use the crc32 value for the same purpose here.
About the padding (I assume you're using the M27C322 EPROM), the crc32 value I get after padding to 4MB / 32Mbit does not reproduce yours, internal ROM header checksum corrected or not. Before padding, the file should have the following crc32 values/sha1sums:
|
R= Step & crc32 & sha1
R= Original US Gradius III ROM as read out from your cart & cd973979 & 7e62203a4198e9404eb7b076802c09786e5a63f4
R= After SA-1+Origin patch has been applied & 45611e5e & 48548fac3857a042012d487f1483f7a33fae0ac8
After padding, the values depend on the size the ROM file was padded to.
I've just patched an original US Gradius III ROM with
Gradius-III-Origin-USA-v16.bps using Flips, then expanded it to 4MB / 32Mbit using Lunar Expand, and finally corrected the internal ROM header checksum using
ucon64 --chk. The resulting sha1sum is now
26ccb6525bb3461d289033bc6e47518b87997ba5 - if you're getting the same then your ROM file should be ok and ready to go onto the cart (of course assuming expansion to 32Mbit as one would do for the M27C322). For obtaining the sha1sum of a given file I've referenced other commands in the opening post like
certutil for Windows or
sha1sum for Linux, but you can also display it using ucon64 like so:
ucon64 --sha1 path/to/your/file.
* If you need it, you can find the internal ROM header checksum near the end of ucon64's output just above the crc32 value. After expansion to 32Mbit, it should read:
Checksum: Bad, 0x71e1 (calculated) != 0x71de (internal)
Inverse checksum: Bad, 0x8e1e (calculated) != 0x8e21 (internal)
before correction and
Checksum: OK, 0x71e1 (calculated) == 0x71e1 (internal)
Inverse checksum: OK, 0x8e1e (calculated) == 0x8e1e (internal)
after correction.
Gradius-III-JPN-v16.bps and Gradius-III-USA-v16.bps (standard SA-1 patch) are by the way unchanged from the previous Gradius-III-JPN.bps and Gradius-III-USA.bps (labelled
here as v1.5).