Corrupted Cartridge Fixer Release

  • Thread starter Thread starter skawo
  • Start date Start date
  • Views Views 181,799
  • Replies Replies 709
  • Likes Likes 86
3DS cartridges are technically flash storage - so not read only. It should in theory be possible to rewrite them with special equipment - but they're not wired up to be rewritten with arbitrary data using a 3DS.

We're just telling the chip to trigger an internal function that works with the data that's already there.
 
  • Love
Reactions: impeeza
I mean when fixing, the cardridge is basically rewrriting chunks of itself, no? That means its not "read only". Unless i dont understand something
No, fixing the cartdriges is a process where the chip «it self heals» bad sector that type of flash memory losses data because need electricity on each sector to keep it alive, the process read all sectors to try to read the data fading. but if the data is going bad there is no recovery, is like a hole on a dvd.
 
how do I install it? I don't have the absolute idea how to do it, I'm 100% new to all this and I need a tutorial please :CC
Post automatically merged:

how do I install it? I don't have the absolute idea how to do it, I'm 100% new to all this and I need a tutorial please :CC
 
Can I delete the log of bad blocks from the sd card or will it cause any issues? Besides is it automatically a lost cause if the programm runs through romfs?
 
Last edited by Erkman,
  • Wow
Reactions: impeeza
The log is just for your own information. Feel free to delete.

And, no. Through normal operation it first goes through EXEFS and then ROMFS.
 
  • Like
Reactions: Erkman
I just went through my entire 3ds collection and my copy of Disney Magical World 2 was throwing the arm 11 exception. A pass through your program, and 56,000 refreshes later, the game is bootable again! Thank you!
 
  • Love
Reactions: impeeza
Thanks for making the tool.

I bought my copy of Ruby at the same time I bought my cousin a copy of Sapphire. They both wouldn't work but his copy passed through the tool with flying colors (though the verification rejects it each time). My copy gets stuck often and I see "500 refresh" all the time . I am ready to give up and realize that every time I skip a block it remains broke. Is there anyway to tell the tool to skip without opening the 3ds and pressing Y?
 
Thing is, it's not going to get better if you just auto-skip those blocks. It only refreshes the data that was last read - skipping the block will just make it move past that chunk and it won't get any refreshes anymore.
 
Hi, new profile here, I also registered just to say thank you. I hope I could fully appreciate what you did but I have no idea about programming but in any case you seem to have helped a lot of people.
I am trying to fix a European copy of Alpha Sapphire that's probably beyond hope. Before I found your post I thought reflowing was gonna fix it, but my copy still won't boot even after thorough check of hardware.
I was wondering if you have any recommendations about alternating between the different options of both apps. I mean as I said, i have no clue how things work but I started with a log output option of the primary app (which returned 7k+ lines) and then I tried the SELECT option, then I did one of the cycles from the 100refreshes app and back to a regural cycle which showed about 5k errors.
 
  • Love
Reactions: impeeza
I don't know if you'd particularly care about this, but the original patient zero cart is still going strong. Been about two years now hasn't it? There have been absolutely no issues with it since then. No reoccurrences, nor any unwarranted side-effects. Suffice to say, everything checks out in the long-term.
 
  • Like
Reactions: impeeza and skawo
Well, if the amount of errors has decreased, as I understand, then I guess you should just keep trying, though 5-7 thousand lines of bad blocks sounds... pretty bad. Might as well keep running it using the SELECT mode until you notice the amount of errors get really low. There's really not much I can advise here, though, except to try and see :(

Ah, yes, that is good to know - I can confirm that my Paper Jam cart is still in perfect working order as well, so, yeah.
 
  • Like
Reactions: impeeza
Well, if the amount of errors has decreased, as I understand, then I guess you should just keep trying, though 5-7 thousand lines of bad blocks sounds... pretty bad. Might as well keep running it using the SELECT mode until you notice the amount of errors get really low. There's really not much I can advise here, though, except to try and see :(


Ah, yes, that is good to know - I can confirm that my Paper Jam cart is still in perfect working order as well, so, yeah.
Yes, slow and steady the error log is decreasing. The first cycle took me 12+ hours and about 12million refreshes. 2nd was 6 hours and 3rd and onwards takes about 1.5 hour and 2 million refreshes. There are no more hashes that are mismatched (I used to skip some occasionally just to move the process along) and the remaining errors appear as unfixable but each time (so far I have 3 logs) they are fewer. I intend to go through 15-16 cycles just as an experiment and hope I get to at least boot the game.
 
  • Like
Reactions: impeeza and skawo
Dawn. I buy few times Pokemon Alpha Sapphire and Fire Emblem Echoes to check and almost all of them was dead already.
Found only Pokemon AS fully working, that complete verify fine.
So far 8 (from 10) dead PAS on sales, 14 (from 15) FEE...
Keep them alive guys!:sad:
 
Last edited by k7ra,
Greetings! You might have seen it already, but a recent commit to GodMode9's repo apparently speeds up ROM reading, thus making verification pass almost twice as quicker. Perhaps that change could be useful for this fixer too?
 
  • Like
Reactions: impeeza

3DS Cartridge Fixer Tool


Lately, there have been news about NAND Flash media deteriorating just because of sitting unused in storage for too long. 3DS Cartridges use a fancy NAND Flash chip, so, naturally, there is some cause for concern that they, too, will start failing.

When cleaning my collection, I decided to check all my 3DS games for this very reason - and to my surprise, my Paper Jam Bros. cartridge has completely failed. On an unhacked 3DS, it would load infinitely, and on 3DSes with Luma CFW it would immediately throw an ARM 11 Exception when launched.

After dumping the game, I discovered that the ExeFS and about half of the game files were corrupted. I nearly wrote the cartridge off, until I noticed that the "infinite load" thing stopped happening. Indeed, the game was now crashing when trying to display the titlescreen. Checking with GodMode9, the ExeFS has seemingly fixed itself! Some more faffing later, I even managed to get the titlescreen to work again intermittently.



Reading around, I found this post, and with it mentions of the 3DS carts' refresh functionality. And so, I modified GodMode9 to run this refresh more frequently and after some manual checking and comparing hashes, I now have a fully working Paper Jam. Bros. cartridge again. Hooray?

I decided to make the process more automatic and release a tool able to potentially fix cartridges corrupted in this same manner.



Download:
https://github.com/skawo/GodMode9-with-Cartridge-Fixer
(In the "releases" section)​


Usage:
  • Run the program (Install the Luma CFW, put the compiled .firm file from the Releases section in luma/payloads/, turn on the 3DS holding START) and insert a cartridge.
  • Choose "GAMECART". A list of files will pop up. If it doesn't, try reinserting the cartridge.
  • Choose the file with the .3ds extension (but NOT .trim.3ds, just .3ds).
  • Choose "NCSD image options..."
  • Choose "Fix cartridge corruption".
  • After the fixer finishes, go into "NCSD image options" again and choose "Verify".
  • If the verify option says that verification succeded, great! You're done.

If the verification fails, try running the fixer process again. It may take several run-throughs before the whole cart is stabilized. To verify that the cart is getting better with each-run through, hold Y while selecting the "Fix cartridge corruption" option. This will make the console output a log of bad blocks to the SD card (to the gm9/out folder). If that list keeps getting shorter with each run-through, great! Keep going. if the number of entries doesn't decrease after a 2-3 attempts, then those blocks are probably not going to get better with repeated runs.


If you're looking for a way to confirm your cartridges are working fine, GodMode9 (and as an extension, this tool as well) has a verify function which checks all the files - a more thorough check than just trying the cartridge out regularly. A cartridge might start but still have some random files corrupted.
Stats so far:
50 fixed fully - - - - - - - - 27 improved - - - - - - - - 25 unrecoverable

If you do try this out, please share the results!

Note: this will not do anything for cartridges that have physical defects, such as cracked solder joints. But if your cartridge appears to load infinitely, or frequently crashes from non-gameplay-related reasons, this tool has a chance to fix it.

I wanted to fix my brothers cartridge that stopped working, its a copy of Pokémon Omega Ruby, but when I try and verify it, it says that verification failed, what should I do? I promised my brother to fix it so we could play together and I don't know what to tell him now, he's gonna be upset, very upset, he's gonna cry that he lost everything on it.
 
I wanted to fix my brothers cartridge that stopped working, its a copy of Pokémon Omega Ruby, but when I try and verify it, it says that verification failed, what should I do? I promised my brother to fix it so we could play together and I don't know what to tell him now, he's gonna be upset, very upset, he's gonna cry that he lost everything on it.
sorry it is beyond recovery, that happen with that technology, sometimes the data is gone for ever.
 
I wanted to fix my brothers cartridge that stopped working, its a copy of Pokémon Omega Ruby, but when I try and verify it, it says that verification failed, what should I do? I promised my brother to fix it so we could play together and I don't know what to tell him now, he's gonna be upset, very upset, he's gonna cry that he lost everything on it.
How many times have you let the corruption fixing process run?
 
  • Like
Reactions: impeeza

Site & Scene News

Popular threads in this forum