How to restore an entire bootmii NAND backup, not just the sectors that are different?

Nintendo Maniac

Well-Known Member
OP
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
tl;dr: When you restore from a bootmii NAND backup, it only restores the sectors that are different rather than the entire NAND, and I would like to instead restore the entire NAND including the sectors that have not changed—I do not care about minimizing unnecessary writes to the NAND.

————————————————————————————————————————————————————————————————

Every detail and the kitchen sink

A couple of month ago, I noticed that some 8GB USB flash drives that my father got from his workplace around a decade ago started suffering from bit rot (verified using SHA1 checksums of all of the files on the disk), presumably because I think these drives were made in that narrow point in time after TLC NAND became a thing but before 3D NAND became a thing, making their flash memory sort of the worst of both worlds (this if evidenced in that they're the slowest USB disks I own, even more-so than old flash disks measured in megabytes).

This got me thinking about bit rot in general for flash memory and, from some tests using the aforementioned USB disks that were suffering from bit rot, I found that having the disks receive power only slows down bit rot rather than stopping it (and heat seems to accelerate bit rot). Since I'm a bit OCD about backups and data retention (hence the aforementioned use of SHA1 checksums), it was easy for me to go around and refresh the sectors of all of the flash memory disks and SSDs that I own, even including my soft-modded 3DS.


...but the Wii is a different story because, when you restore from a bootmii NAND backup, it only restores the sectors that are different rather than the entire NAND. I imagine this was done simply because it's faster and helps prevent unnecessary wear on the Wii's NAND, but it'd be nice if you could still do some sort of override and forcefully restore the entire NAND.

Thing is though, I really don't want to straight-up format the system memory then subsequently restore its NAND since, I'll be honest, I have no idea if formatting the Wii would still allow me to go into bootmii like normal and restore the NAND, or if it'll be treated like a different Wii afterwards and I won't be able to restore the NAND, or if formatting it will even make it difficult to get back into bootmii in the first place, so it seems safer to just not even humor the "format system memory" route.


If worst comes to worst I figured I could just try making a new bootmii NAND backup, then restoring from the oldest bootmii NAND backup I still have on hand, and then re-restoring that newly-created boomii NAND backup. It possibly won't overwrite the entire NAND (heck it might not even overwrite half of it since the arrangement of channels I've had installed on the system memory hasn't really changed in like a decade), but it's still better than nothing.

At the very least, my console is a launch-day Wii system so the NAND can't be any smaller than 90nm since that was the node used for the CPU, meaning the NAND is going to be using a node that's at least equal to or larger than 90nm (I wouldn't even be surprised if the NAND used something like a 130nm node). Furthermore, since TLC NAND wasn't even a thing yet, it'll be at least MLC NAND if not straight-up SLC NAND (I'm unsure if MLC NAND was actually available in consumer products at that time since consumer SSDs weren't even a thing yet which is what really popularized MLC NAND). Therefore, this combination of a relatively huge-sized manufacturing node combined with at least MLC NAND if not SLC NAND means that the unpowered data retention time for my Wii's NAND should in theory be a ridiculous amount of time anyway (i.e. decades).
 
Last edited by Nintendo Maniac,

Nintendo Maniac

Well-Known Member
OP
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
...I don't think you're understanding my question. I already know how to restore a bootmii NAND backup but, if you've ever watched the process on-screen, you'll see that it only ever restores the sectors of your Wii's NAND that is different from the backup.

I'm looking for a way to restore all sectors of the backup to the Wii's NAND, even overwriting the sectors that are identical compared to the backup (effectively the equivalent of what something like DiskFresh does on the PC).
 

SylverReZ

Dat one with the Rez
Member
GBAtemp Patron
Joined
Sep 13, 2022
Messages
7,170
Trophies
3
Location
The Wired
Website
m4x1mumrez87.neocities.org
XP
22,011
Country
United Kingdom
I'm looking for a way to restore all sectors of the Wii's NAND, even overwriting the sectors that are identical compared to the backup copy on the SD card (effectively the equivalent of what a program like DiskFresh does on the PC).
You can try making a fresh NAND with "Ohneschwanzenegger" ensuring that you've signed it too with the console key. If you see a few broken blocks being written, that's not an issue whatsoever.
 

Ryccardo

Penguin accelerator
Member
Joined
Feb 13, 2015
Messages
7,691
Trophies
1
Age
28
Location
Imola
XP
6,913
Country
Italy
Thing is though, I really don't want to straight-up format the system memory then subsequently restore its NAND since, I'll be honest, I have no idea if formatting the Wii would still allow me to go into bootmii like normal and restore the NAND, or if it'll be treated like a different Wii afterwards and I won't be able to restore the NAND, or if formatting it will even make it difficult to get back into bootmii in the first place, so it seems safer to just not even humor the "format system memory" route.
A factory reset, officially but very incorrectly called system format, does nothing of that (assuming, from what you write later, that you have bootmii as boot2) :) and even if you just had the IOS version and no Priiloader for some reason, you'd just need to re-supply some way of launching IOS254!

Now if you used Comex's nand formatter (or some other way to rebuild the filesystem from scratch, which exists)... well, mostly the same, the main console ID is in PROM...

But yeah, it would be nice to have some equally-capable competition on BootMii's backup/restore capabilities, but there's none AFAIK for the latter and parallel NAND programmers are nowhere as ubiquitous as SPI/I2C ones....
 
  • Like
Reactions: SylverReZ

Nintendo Maniac

Well-Known Member
OP
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
A factory reset, officially but very incorrectly called system format, does nothing of that (assuming, from what you write later, that you have bootmii as boot2) :)

So you're saying that, because I have bootmii installed as boot2, I would still be able to launch bootmii like normal even immediately after a factory reset?

Also, does a factory reset bork up the locked-to-console thing with VC games and WiiWare that were officially downloaded from the Wii Shop Channel, i.e. you can't copy them to another system using the standard Wii Menu's data management? (yes I know I can install them via homebrew methods—something I needed to do for at least one game that I had no interest in until after the Wii Shop Channel had been shut down).
 

Ryccardo

Penguin accelerator
Member
Joined
Feb 13, 2015
Messages
7,691
Trophies
1
Age
28
Location
Imola
XP
6,913
Country
Italy
So you're saying that, because I have bootmii installed as boot2, I would still be able to launch bootmii like normal even immediately after a factory reset?
Sure - the only things that affect boot2 are direct sector modification (what the hackmii installer does) or the boot2 install function (what's used the first time you officially update to 4.2+ and has bricked maybe 1000 wiis world wide)
Also, does a factory reset bork up the locked-to-console thing with VC games and WiiWare that were officially downloaded from the Wii Shop Channel, i.e. you can't copy them to another system using the standard Wii Menu's data management? (yes I know I can install them via homebrew methods—something I needed to do for at least one game that I had no interest in until after the Wii Shop Channel had been shut down).
The console id remains the same, the licenses remain server side (unlike with a wiiu transfer or "deleting the shop account") but I think you can't reinstall a title that way because the ticket has to be reinstalled?
BlueDump Mod will be able to convert the content.bin to a wad, though
 

Nintendo Maniac

Well-Known Member
OP
Member
Joined
Apr 26, 2007
Messages
851
Trophies
1
XP
741
Country
United States
If anyone is ever reading this in the future, I can definitely confirm that "System format" truly doesn't format the internal memory but, in theory, should at least help a little bit to refresh the NAND sectors of user-installed data?

Thing is though, my NAND was nearly full with only 208 blocks empty, yet bootmii only needed to erase 546 blocks. Since a Wii block is equal to a megabit (not byte), that means the Wii's 512MB NAND would have 4096 blocks in total and that my own Wii had around 3886-3887 blocks stored (I know my Wii has at least one bad block, maybe two?), so the supposed "System format" only erased like 1/7 of that data (see attached photos)—I'm guessing this is sort of like how, on computer SSDs without trim or mechanical hard drives, deleting files instead just "flags" the data to be available for overwriting rather than actually physically deleting anything.

And to clarify, restoring from a bootmii NAND backup puts the console exactly back to where it was before the "System format" and anything purchased from the Wii Shop Channel works exactly as-is, including anything with the SD card channel as well as moving/copying data to and from the SD card via the official data management.
 

Attachments

  • IMG_2337.JPG
    IMG_2337.JPG
    2.4 MB · Views: 26
  • IMG_2340.JPG
    IMG_2340.JPG
    2.4 MB · Views: 22
Last edited by Nintendo Maniac,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Lol rappers still promoting crypto