Corrupted Cartridge Fixer Release

  • Thread starter Thread starter skawo
  • Start date Start date
  • Views Views 184,313
  • Replies Replies 716
  • Likes Likes 87
it could be a problem for alpha sapphire, since some of the nand past the actual game data is used for save data. if it's just corruption then it's fine, because clearing the save data or rewriting it will solve that, but if the chip is actually failing and those addresses are stuck, it could potentially cause problems later on

although, if you're able to save and reload a save without it complaining that the save file is corrupted, you might be fine
Would a GM9 dump of the game also dump the savedata, though?

Maybe if there was a way to force refresh specific sections of a card this could be fixed? I'm assuming lead-out validity is checked but for all I know it isn't.
You can force-refresh the entire cartridge by holding SELECT as you run the checksum calculator. I don't think I would worry about it if the game files aren't affected, though. The fixer/verifier only loops through all of the game files - not the blank space on the card, so corruption in the blank space would indeed escape detection.
 
Last edited by skawo,
You can force-refresh the entire cartridge by holding SELECT as you run the checksum calculator. I don't think I would worry about it if the game files aren't affected, though.
I've considered doing that. But while you seem pretty confident about your tool not damaging 3DS cards, the disclaimers on the force refresh mode seem to suggest that that mode specifically might be bad for them in some way. Are you worried About NAND cell fatigue if someone spams this mode repeatedly? Either way, I'm probably just going to ignore it unless my cartridge stops working again.

Would a GM9 dump of the game also dump the savedata, though?
I have a copy of Omega Ruby with save data on it that got a valid hash in gm9 and when I dumped it to .3ds I still get the same valid hash value checking it on my computer. This would be theoretically impossible if gm9 included save data in the game dump as it would interfere with the hash value.
 
Probably a dumb question, but what exactly is the difference between the gm_CartRefresh1.3.firm and the gm_CartRefresh1.3_100times.firm? I'm very new to the homebrewing scene and just wanna make sure I installed the right file.
 
The 100times one runs the refresh function 100 times per read.
You should run the normal one first, and only use the 100 times one if the process gets stuck on a large file for a very long time.

Are you worried About NAND cell fatigue if someone spams this mode repeatedly?
Yeah, pretty much.
 
  • Like
Reactions: splaca
Quick question: Is there any estimation how widespread the issue with corrupted games is?

I ran the verification for my physical 3DS game collection of about 50 carts (including Pokémon) and got no errors :)
 
I'd known about the Omega Ruby and Persona Q issues before, so I'd previously checked them some years back, but decided to check them again as well as check other games. As far as I can see most of my games seem fine, I've not gone through and verified all of them yet since that's quite time consuming (I have over 75+ games at an estimate), but so far I've tried launching and doing a quick play test of all my games, and started verifying the most important ones.

The only one so far that showed issues was Smash, which indeed is apparently another problem child card which I didn't previously know about. Right off the bat it just wouldn't launch, after removing it and re-inserting it launched but crashed on the 3DS screen with no improvement past that which led me to this tool. I've tried running this tool multiple times which got rid of the mismatch hashes, but it still has quite a large amount of stuck hashes that I'm not sure is going to be solved. I tried the 100 retry version and that seemed to increase the stuck hashes it found which is a bit odd.

SInce that seemed a bit futile for the moment I went back to verifying some carts, some of which were still sealed but I opened them up since I'd rather have opened working games than sealed potentially broken ones. Even the ones that had been sealed for well over a decade are still working fine, which is interesting. It makes me think the issue is largely a bad batch which causes certain carts to expire far quicker than others.
 
  • Like
Reactions: skawo
Thanks a lot! This saved my Animal Crossing cartridge, working perfectly now. Had to run it twice in order to fix.
 
  • Like
Reactions: skawo
Hello, the option "fix cartridge" is not appearing to me, what could it be? Also, the verifications are always failing.
 
I have been testing more of my games and found another corrupted one, Super Smash Bros. I tried probably about 10 runs of the refresh and it was still failing to verify. After doing the refresh on every read it started working. I checked it again a day later and it is still passed the verify. But one strange issue I noticed was I have a full copy of all the .3ds files from 5 years ago when I saved my games and the hashes don't match. I took the 5 year old 3ds file and put that through the verify and it passed. From what I understand the verify will work to check both saved 3ds files and the one directly on the cartridge. So both pass the verify but they have different hashes, they are the exact same size in bytes. I thought maybe something changed with how GodMode9 saved the 3ds file but I checked other games and the current hashes still match the hashes from 5 years ago.
 
The empty space on the cartridge is not checked during verify and might have changed due to the corruption.
 
I'm not sure what happened but I went to copy the two files to my linux system to do a byte comparison with cmp and I noticed the hashes were the same. I must have mixed up files or something. To make sure I used GodMode9 to directly calculate the sha-256 from the cartridge and it matched the one I have from 5 years ago. I have both the 3ds files and a sha256.txt with hashes from when I saved them. It's also on Dropbox so I know I didn't accidently overwrite the old one with the new one. But whatever happened they do have matching hashes. These are also the trim.3ds files, I run the refresh on the full 3ds but save the trim.3ds.

If I get another corrupt one I will save the 3ds file to compare to the one from 5 years ago. I know from the
Mega Man Legacy Collection that the trim.3ds file will fail and pass a verify both from the cartridge and on the sd card because that one I did save before running the refresh and I ran the verify on the trim.3ds from the sd card to see what would happen. After the refresh fixed it the verify began working on the new 3ds export. I never ended up keeping the trim.3ds from before it got fixed so I can't compare them also that game I got recently and I don't have a copy from 5 years ago to compare to.
 
  • Like
Reactions: skawo
I finished checking all my games, I first did a verify to check if the game was corrupt then ran the refresh to hopefully keep the storage stable in the future. Out of the 124 games 2 were corrupt, MegaMan Legacy Collection and Super Smash Bros. MegaMan was fixed with a few runs of the refresh and the Super Smash Bros didn't work until using the refresh on every read.
 
  • Like
Reactions: splaca and skawo
I'm not getting the "Fix cartridge corruption" option, it is unclear to me from your explanation where do I get the .firm file from, from what I understand I have the latest Luma update which atm is 13.3.2. Am I supposed to download something from the github link you provided? If that is the case, I'm not finding any file in there as a .firm
 
I made an account here just to thank you so much for making this!

My brand new sealed copy of Fire Emblem Echoes Shadows of Valentia (Limited Edition) would constantly crash at the beginning of the game. I used your tool (it took a total of 4 times before the verification came back successful) and now it works perfectly!

Only suggestion I have is to maybe clarify that the .firm file location in the releases section is on the right hand side of the page. Myself (and some others from the sounds of things) was confused at first as I thought it would be located somewhere in the middle of the page. After a while I realized that the releases section was located off to the side.

Otherwise the tool was super straightforward to use. Thanks again! :)
 
  • Like
Reactions: skawo

Site & Scene News

Popular threads in this forum