Corrupted Cartridge Fixer Release

  • Thread starter Thread starter skawo
  • Start date Start date
  • Views Views 184,720
  • Replies Replies 718
  • Likes Likes 87
I've run the tool probably around 10 times since yesterday on my Ruby Omega copy. It used to crash at launch. Now, the tool still says "Verification impossible" BUT the game seems to work! I was able to start it and walk around a bit, I haven't tested much.
Thank you so much for this! I might run more fixes in the future or if it starts crashing again, but for now it works.

I'll attach my last few attempt logs, I haven't recorded from the start. Each one created 3 files and the amount of lines seems random, sometimes goes up sometimes goes down.
 

Attachments

  • Like
Reactions: skawo
I made this account just to thank you for this. My copy of Professor Layton vs Phoenix Wright: Ace Attorney would crash a minute into starting it. I had to run the fixer I think 6 times but it until it would pass verification and the game is playing as it should now. Once again thank you for allowing me to fix this valuable cartridge (as it's quite pricey to buy on the resale market).
 
Hey man, I ran the refresher 10~12 times I think, and the unfixable blocks got to 70, then as low as 46, but then they increased back to 70 after a couple more runs. Should I use select+fix?

Idk if that's important but my first 3 runs were with the 100x refresher
 
Last edited by AlsornaJP,
I'd just run it a few more times like you have been, the blocks sometimes increase/decrease randomly before finally stabilizing.
 
  • Like
Reactions: AlsornaJP
Been running it since you responded yesterday, the number of unfixable blocks still hasn't stabilized. The cartridge works and all, but i really wanted it to get fully fixed and not risk any other errors . Is there any risk in using SELECT fix?
 
Last edited by AlsornaJP,
Haven't seen it cause problems, but it does mean hammering the cartridge with the refresh on every read, so...
 
Hello!

I created an account on this site just to thank you.

A few weeks ago, I wanted to play Mario Kart 7 again when I noticed the game was crashing shortly after starting it. After some research, I realized it was crashing right after loading the tracks.

I thought I'd have to repurchase the game, but today I discovered this tool, and after selecting the "Fix cartridge corruption" option twice, I was able to pass the verification.

When I relaunched the game, it worked perfectly!

Thank you so much!
 
Thank you Skawo for creating this fixer.

I was able to fix my copy of Fire Emblem Awakening after running the fixer, but I do have two questions.

After running the fixer and then trying to verify the cart it keeps failing the verification. After some digging I found two blocks that keep getting stuck, but after letting it run for awhile they end up moving and the fixer is able to finish. Could this be happening because of DLC I purchased for the game?

Would this be considered a partial fix? Or can I mark it off as fixed?

From my short time of testing the game out everything seems fixed, but I haven't been able to pass verification.

Once again thank you so much for this fixer. I hope to post again after trying it out on my copy of Pokemon Y.
 
Just wanted to report, I was in the process of ripping my games and I realized my copy of SSB would not launch. At first I thought it was some corrupted update data, but I noticed the cart wouldn't run in a fresh 3ds either, so I just assumed it was dead. I found this thread on whim, and decided to give refreshing a shot. It was news to me that 3DS carts aren't actually ROMs, so it makes sense that it might be corrupted if I hadn't touched the game in a long time (which it's been years at this point).

I gave it a shot, and it fixed quite a few incorrect hashes with the first run alone. I tried verification, but that still failed. I tried running the cart as is, and it did actually get past the 3DS logo and loaded the game, so that's pretty good.

I'm currently aiming to see if I can get verification to pass, but I've run it a few times, and the number of refreshes continues to fluctuate up and down each time I run it, and verification continues to fail. I tried the 100 refresh version, and that seems to result in a few clusters that had the "Hash Stuck" message, so my next idea is to try Select + 100 refresh to see if that makes a difference, but I'm not sure if there's any danger of "over-refreshing a cart".

EDIT: Also, just to clarify, the game did launch, and I was able to get a few rounds in, but it seems to randomly crash prior to starting matches sometimes. I wonder if there's a specific character it's trying to load, but failing. I haven't sussed out what it might be yet. So despite the several clusters that are still failing the hash check, it's in a much more usable state.

EDIT 2: I've also noticed sometimes it gets a hash stuck on hashes that look like they match:
 

Attachments

  • IMG_4341.png
    IMG_4341.png
    1.3 MB · Views: 51
Last edited by Omnislash124,
Hmm... When the hash gets stuck and fixed, it tries to verify it a few times to make sure it's actually gotten fixed.
'ts probably what's going on there.
Does it move on eventually?
 
It does move on after the 20 retry limit I think. What's weird is that I tried to run it again to see if it got fixed, and for some reason, it seems like it got stuck on that one again? But the expected hash seems to have changed. I'll see if I can get the log from this next run.

EDIT: It seems to generate 3 files. 2 of them are basically empty. The third one has a few unfixable:

CORRUPTION FIX LOG ON C:/00040000000EDF00_v00.3ds
Unfixable: b9dd000
Unfixable: b9de000
Unfixable: b9df000
Unfixable: b9e0000
Unfixable: b9e1000
Unfixable: b9e3000
Unfixable: b9e6000
Unfixable: b9e7000
Unfixable: b9e9000
Unfixable: b9ea000
Unfixable: b9eb000
Unfixable: b9ec000
Unfixable: b9ee000
Unfixable: b9ef000
Unfixable: b9f1000
Unfixable: b9f5000
Unfixable: b9f6000
Unfixable: b9f7000
Unfixable: b9f9000
Unfixable: b9fb000
Unfixable: b9fc000
I'm not sure how this compares to the previous runs, so I'll have to run it a few more times with the logging on.

EDIT 2: To add more color to this, I counted the number of chunks that ran into the "Hash Stuck", and it was also about 21, equal to the number of Unfixables. I'm guessing this part of the ROMFS is probably just dead, though I'll give it some time and try it a few more times tomorrow. The number of refreshes did decrease between runs, so it might be getting better. But I've seen it fluctuate, so I'm not sure if it's just some chunks occasionally failing instead of always failing.
 

Attachments

  • Screenshot 2025-04-10 at 5.39.55 PM.png
    Screenshot 2025-04-10 at 5.39.55 PM.png
    5.2 MB · Views: 56
Last edited by Omnislash124,
...odd.
But given that it fails a verify still and the game does keep crashing, it's probably doing the job correctly, even if it appears to print the data wrong.
 
Yeah, I suspect it's just dead, but I'll try it again tomorrow. In-game, it seems like this chunk of data happens to be over Samus, since any match I try to load with her selected consistently loads infinitely (on an unhacked 3ds) or crashes to a stack trace (on a hacked 3ds). Still, that's better than not loading at all.
Post automatically merged:

Day 2 update. I ran it once and it came in with significantly less refreshes run, though I unfortunately didn't enable logging for that run. Yesterday, I was seeing around 6000-7000 refreshes, but the first one I ran only had like 79. Verification still failed though. I thought I was making progress, so I decided to run it once more with logging, and now I have about double the number of refreshes as usual (like 13000). Logging indicated that an entire second set of chunks now had stuck mismatched hashes.

Seems like there might be such a thing as "over-refreshing". I'll probably let it rest for a weekend and try it again on Monday. And I probably won't use the 100refresh version. I'm not sure that does anything besides inflate the refresh count if the hash is stuck anyway.

Also, as a side node, that same chunk I've been using as a reference has a consistent expected hash now, so I suspect the first run it was just not displaying the right hash (i.e. the 14EC30 hash is the correct expected hash and not the 1F3359 hash in the first run).
 
Last edited by Omnislash124,
  • Like
Reactions: skawo
wait so how do we actually download the tool onto 3ds srry im p bad with technology icl
Is your console hacked? Can you (and do you know how to) run payloads such as GodMode9 (gm9)?

If not, this here thread won't be the place to start; maybe you want to go here and check the answer (on first post) on how to install CFW (custom firmware); and it's the appropriate thread to ask for help if needed.

If you do know how; it's the same way you would boot other payloads. Put the .firm file by skawo (it's a modification on gm9) in the same folder as other payloads, i.e. likely in luma/payloads on your SD Card. With the console powered off, hold start and power on while still holding. You should see a menu where you choose which .firm to run. Here you choose skawo's Cart Refresh version of gm9.
 
  • Like
Reactions: 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
Hi, I don't know if you ever figured it out, but when you get to the godmode screen, make sure to select the gm_cartrefresh version of godmode instead of the standard one. I got stuck here too, so hope this helps!
Hello, the option "fix cartridge" is not appearing to me, what could it be? Also, the verifications are always failing.
Hi, I don't know if you ever figured it out, but when you get to the godmode screen, make sure to select the gm_cartrefresh version of godmode instead of the standard one. I got stuck here too, so hope this helps!
 
  • Like
Reactions: splaca
Just to wrap up my report: I tried running it again today, and it's more or less stuck at the same two chunks of data that have stuck hashes, so maybe you can mark mine up as a partial fix, since the game actually boots now and most of it works, with the glaring exception of Samus as a fighter (playable or otherwise).
 
  • Like
Reactions: skawo

Site & Scene News

Popular threads in this forum