AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |
Back to Blog
Snes9x bad checksum fix9/22/2023 ![]() If you have one of those other programmers, you’ll have to figure out how to use it yourself (though, if you’re reading this and you already own a programmer, you probably know what you’re doing anyway, nerd).Ģ) EPROMs or EEPROMS. I also purchased a GQ-4×4, which is a great higher-level programmer. There are other more advanced programmers out there, but they run a lot more expensive. The TL866 has worked flawlessly for me so far, even after many years, and it’s pretty easy to use. There’s an updated model, the TL866II Plus, and it seems to work just as well. Step 10: Finish your game Equipment you will needġ) Programmer. This is what you use to program the chips the game data is stored on. Step 8: Double check your chips, and prepare the board Step 5: Fix the checksum and remove the header Step 4: Determine which memory chips to use Step 2: Determine the method you will use There are some soldering skills required, and it might be frustrating at times dealing with older technology – you’ve been warned ! Table of Contents Luckily, the SNES cartridge is fairly straightforward once you know the basics way less complicated than NES cartridges! It is my hope that after reading this tutorial, you’ll have a good understanding on how to make your own SNES cartridges to use in your original SNES hardware. I’ve taken a lot of time to go through and learn all I can about how SNES games work, and I tried my hardest to make a comprehensive and easy-to-follow guide so you can learn a bit about them yourself. I am not responsible for any damage to you or your property – attempt these projects at your own risk! There are a lot of steps, and nearly all of them are crucial to get a working product. The instructions and products discussed are for the creation of homemade games only, or for repairing damaged cartridges for personal use, and should not be used for duplicating and distributing games protected by copyright. Then the last 0.25MBits is mirrored to match the 0.5MBit, so now we have a 1MBit part, and then the last 4MBits are mirrored once to match the 8MBit, so we'd have 16+ 8+ 2*(2+1+0.5+0.25+0.25mirrored) = 32MBit.Disclaimer: This tutorial is for educational purposes. However, I'm curious on what happens if the ROM is not a whole number of megabits, e.g. Thanks for the detailed explanation! I reimplemented the algo in python, and it matches with snes9x's output (with the small number of roms I've tested so far). We mirror this resulting 4MBit part, creating a 8MBit part, which combined with the existing 8MBit part creates the 16MBit part we need to end up with 32MBit. ![]() We mirror the 1MBit part, which then matches the 2MBit part, and thus have a 4MBit part. ![]() ![]() We already have an 8MBit part, so we need to create another 8MBit from the rest. ![]() You take the largest part, then try to create another 16MBit part from the rest. So as you said for your 20MBit ROM you have one 16MBit part, then you take the remaining 4Mbit part and mirror this until you have another 16MBit part, and the end result is 32MBit.įor the 27MBit ROM you have one 16MBit part, one 8MBit part, one 2MBit part and one 1MBit part. (Which is the same as calculating the checksum recursively, which is what the function does) If you have multiple smaller parts you always mirror the smallest part first until it matches the next largest part, then mirror that whole group. Then the end result is also a power of two. For non power of two sizes the idea is to take the largest power of two block, then look at the remaining size in power of two parts, and mirror until you have another block of the largest size. ![]()
0 Comments
Read More
Leave a Reply. |