User:Mbc07/Wii Menu Saga

Below you have a Quick Summary. If you're a developer, the Log Files section may be useful. At the end of the page you have the full Quest Log...

Quick Summary
Tested:
 * 2.0: v97 (U), v128 (J), v130 (E)
 * 2.1: v162 (E)
 * 2.2: v192 (J), v193 (U), v194 (E)
 * 3.0: v224 (J), v225 (U), v226 (E)
 * 3.1: v256 (J), v257 (U), v258 (E)
 * 3.2: v288 (J), v289 (U), v290 (E)
 * 3.3: v352 (J), v353 (U), v354 (E)
 * 3.4: v384 (J), v385 (U), v386 (E)
 * 3.5: v390 (K)
 * 4.0: v416 (J), v417 (U), v418 (E)
 * 4.1: v448 (J), v449 (U), v450 (E), v454 (K)
 * 4.2: v480 (J), v481 (U), v482 (E), v486 (K)
 * 4.3: v512 (J), v513 (U), v514 (E), v518 (K)

Pending:
 * < all publicy available versions in Nintendo Update Servers already tested >

To do:
 * NAND corruption: further investigations on NAND corruption cases, the data I gathered along these testings weren't consistent.
 * Wiki page: add the new problems in System Menu page.

New problems:
 * Channel management: copying channels to SD Card always fail. Deleting channels through Wii Menu will corrupt NAND.
 * EULA for online services: changing some settings in Wii Menu will ask you to accept the EULA again. If you don't have EULA channel in the NAND, games with online features won't work until you install this hidden channel and then accept the EULA through Wii Menu.
 * Format Wii Memory: formatting NAND through Wii Menu works but Dolphin will keep complaining about some missing entries in SYSCONF when you do that.
 * System Update: trying to perform a System Update will end with an error 32004 and SYSCONF may become corrupt (needs further testing).
 * Message board: friend codes can be added to the address book but the option to send messages is always unavailable (button grayed out).

Log Files
System Update: Open Dolphin, load Wii Menu, go to Settings, choose System Update. You'll get an error 32004 and a popup saying that you'll return to Wii Menu home, then Dolphin will crash.

Delete Channel: Open Dolphin, load Wii Menu, go to Data Management, choose a channel and delete it. Channel will be successfully deleted but returning to home screen will crash Dolphin. After that crash, future boots in Wii Menu will result just in a black screen saying "The system files are corrupted. Please refer to Wii Operations Manual for help troubleshooting."

Copy Channel to SD Card: Open Dolphin, load Wii Menu, go to Data Management, choose a channel and copy it to SD Card. Channel won't be copied to SD Card. Dolphin remains functional.

Quest Log
(all hours are based on GMT -4 and date is in YYYY/MM/DD format. Only the days I worked on this are counted)

Day 1 (2014/07/04)
[03h03]: I'm probably crazy but I really want to test all System Menu versions in Dolphin now that ES_Launch is finished (and as I already explained here). First thing is getting WADs from all publicly available versions. Lucky enough, NUS Downloader 1.9 has a built in script to download all System Menu versions so I don't need to manually choose every version and hit "Download". Given we currently have 38 different version averaging around 20MB each (and taking in consideration that I have a shitty ISP), this will take some hours. Anyway it's veeery late, so I'm going to bed, leaving my laptop doing what laptops downloading System Menu from Nintendo servers should do :P

[17h20]: Download finished, looking right now for a folder with 38 WADs averaging 840MB. Trying so set up my testing environment and get WADs from some Channels, however, FIFA World Cup is happening here, right now. Trying to make some progress but it'll be a little hard with all that World Cup noise ¬¬"

Day 2 (2014/07/07)
[11h00]: Testings were going to start today but I found a strange issue with my Windows install causing any app using DirectX or OpenGL to instantly crash (confirmed this behaviour with Dolphin, some Modern Apps and all my PC games). Reinstalled GPU drivers but nothing changed. Since I'm too bored to inspect this and find the cause, it's time to reinstall Windows from zero again (*sigh*). Postponing testings until I fix that...

Day 3 (2014/07/13)
[14h34]: It took some days but now everything is set up and working fine, testings start today. Currently the latest Dolphin build available is 4.0-2109, so I'll stick with it until I finish all System Menu testings. I'll also use a portable.txt file to make sure I isolate the build I'll use for testing from my custom settings that I generally use with Dolphin. The system specs already are listed in my user page and all settings from Dolphin will be the default ones. I'll also wipe "User" folder every time I switch to a new System Menu version.

In this first wave of tests I'll follow this list to set up the testing environment:
 * 1) Install System Menu WAD
 * 2) Install Mii Channel and Opera Internet Channel WAD
 * 3) Set GC Memory Card A and B to two copies of my own GC MemCard (to test Save Management)
 * 4) Enable SD Card in Dolphin and try to move/load channels/saves from virtual SD (only in System Menu versions that allow doing that).

Then I'll follow 3 runs doing the following:
 * 1) First run: load Wii Menu, test all settings options, test GC save management, boot a channel, return to Wii Menu, boot a game, return to Wii Menu, try to manage Wii saves
 * 2) Second run: load game, return to Wii Menu, try to manage Wii saves, load game again.
 * 3) Third run: load Wii Menu, manage Wii saves, load game, return to Wii Menu, load channel.

If it's a System Menu version capable of loading channels from SD Card, I'll try that too. For games I'll use Super Smash Bros Brawl (which uses copy protection in their save) and Donkey Kong Country Returns (normal save). I'm sticking with these two games because they don't need IR pointer so I can just use the Wiimote (my sensor bar is screwed) and because they have skippable intros (will save me some time).

For GC saves I'll download some GCIs from other regions since I own save files only for NA and PAL games, it'll be an issue with JP or KOR versions of System Menu. I'll keep updating this page with results, stay tuned...

[18h03]: Just finished my testings with v97 (2.0U). Since it's the first test I did, I'll use these problems as the global ones and then add notes to specific versions that doesn't show this behaviour (if I found any).

Problems found so far:


 * Disc Channel and GC games: Disc channel now can recognize GameCube games but won't boot them. Before ES_Launch fixes it wouldn't even recognize them, so, this is somewhat an improvement (need to add that bit in the current problem description already listed in System Menu)


 * EULA for online services: When changing country/region in System Menu or when setting a new connection setting, it'll warn that you need to accept EULA again. If you don't have EULA channel installed in Dolphin NAND, a popup saying that you must perform a System Update will appear. If you have the EULA channel it'll just show the EULA to you and then accepting it will bring you back to Wii Menu. If you don't have EULA channel and don't accept the System Update, Wii Games that still work online (like Just Dance games) won't let you use any functionality because you haven't accepted the EULA.


 * Format Wii Memory: Choosing Format Wii Memory in System Settings works. After formatting, a popup saying that the Wii will be turned off will appear, choosing OK will result in a black screen with FPS 0 VPS 60. Manually stopping emulation and then loading Wii Menu again will cause Dolphin to show some popups about missing entries from SYSCONF but then Dolphin will boot to the same one-time setup that occur when you turn a real Wii on for the first time (sweet). After finishing the one-time setup, most of the SYSCONF popups will stop appearing, however, Dolphin will still keep complaining about entries IPL.PGS (related to progressive scan) and IPL.E60 (related PAL60 mode) when opening emulator settings or booting Wii Software until you manually toggle them at least one time through Wii Menu Settings or until you manually delete User\Wii\shared2\sys\SYSCONF to let Dolphin regenerate that file.


 * System Update: For my surprise, choosing System Update in Wii Menu will corrupt some files and leave Dolphin completely unusable. When you try to update Wii Menu, it'll actually start downloading but one second later it'll stop with error 32004 and show a popup saying it'll return to Wii Menu. Some seconds later, a black screen, a Dolphin error about HLE Function call then a crash ("Dolphin stopped working, blablabla"). From here, every time you boot Wii software with Dolphin, a lot of SYSCONF popups will appear, and that may be followed by an instant crash ("Dolphin stopped working"), but sometimes it just works. From here, the only solution to fix that was completely wiping NAND path (User\Wii), only deleting SYSCONF didn't work (needs further testing)...


 * Wii Message Board: Wii Message board is working fine, however you can't send messages to any contact you register (the button will always be grayed out) and the Play Time only register softwares you used correctly if you boot them from Wii Menu and after playing the selected title you come back to Wii Menu by pressing home. Further testing would be trying to send a message to the Dolphin's Friend Code (I can't do that because my Wii is dead)...


 * Save Management: GC Save management working flawlessly, without any issue. Wii saves that aren't copy-protected can be copied to and from virtual SD Card without any trouble at all. I also put a exported save file from a real Wii inside the virtual SD Card and Dolphin successfully imported it back through Wii Menu too. One thing that didn't work was copying channels to the SD Card, the copy always fail ("The data wasn't copied"). Also, deleting any channel through Wii Menu will corrupt NAND. Going back to Wii Menu or any other further booting to it (either from Dolphin or from Home button when playing a game) after deleting a channel will result in a "The system files are corrupted. Please refer to Wii Operations Manual for help troubleshooting." message. The only fix is completely wiping NAND path too...

Everything else you can do in Wii Menu worked fine, without any issues...

[22h10]: Started testings with v128 (2.0J) and noted something weird. It's a japanese version of Wii Menu, so, why all text are english? Why changing Wii language to japanese in Dolphin settings doesn't have any effect? Anyway, continued my testings, BUUUUUT, trying to enter Wii Settings gave me that:

Because of that, I couldn't confirm many problems above (except Wii Message Board, GC Disc Channel and Save Management that behaved exactly the same way already listed above). Then I remembered that I saw somewhere in WiiBrew that real Wiis in soft brick state show the same error, because of region mismatch (the same occur when you install a EU System Menu in a JP Wii, for example). Did a quick test with the other japanese versions of Wii Menu and all have this issue too, discovered that it's a regression from, more details in.

Day 4 (2014/07/14)
[23h30]: It was a busy day so I didn't progress much with this quest. The news are that I finished testings with v130 (2.0E), same problems already listed, nothing new or different and also that I opened, the one with info regarding the regression affecting japanese versions of Wii Menu. Because of that, I'll provide limited testing with japanese versions but I plan checking them again once this regression get fixed. Besides that, did some refactoring in this page (still messy but better than before) and... oh sh*t, forgot the logs again. I'll write here so I don't forget in next testings: take logs while testing System Update, this will help some devs (in fact, someone asked that in IRC) :P

Day 5 (2014/07/15)
[17h18]: Updates on : it never existed! The bug was caused by official build bot using an outdated compiler but this is fixed since. Since I'm not too far with these testings, I'm sticking now to (latest available at time of this writing). Will also retest v97, v128 and v130 in the new build to make sure the results are accurate...

Day 6 (2014/07/21)
[23h02]: Luckily enough, got a lot of free time today that I spent working on this. Finished retesting 2.x versions with 4.0-2169 and managed to test all 3.x versions. All problems already listed are reproducible in these versions and I didn't found anything different or new. Since I have zero knowledge with japanese or korean, in these specific versions of Wii Menu I assume the error messages are the same from the NA/PAL versions (and it's very likely to be since they occur exactly in the same way and place of the other versions).

I still need to do further testing regarding NAND corruption when performing System Update, as far as I tested, when error 32004 pops up, Dolphin crash. This crash may corrupt SYSCONF and this is the factor which may cause Dolphin to crash when loading Wii Software (if you're lucky to not corrupt SYSCONF when error 32004 occur, Dolphin will keep working fine). AAAAND finally got some logs to the guys that asked them in IRC, sorry for the delay but they can be found now in "Logs" section from this page...

Day 7 (2014/07/31)
[21h02]: Testings finally finished, nothing new. Well, in 4.x releases, there's a slight change in the error message that appear when copying channels to SD, the message changes from "The data was not copied" to "The data may not have been copied". Now that testings finished, time to get some screenshots and write new problems for the System Menu page. Also, NAND corruption needs further investigation, Dolphin behaves different every time I cause a NAND corruption (either by performing a System Update or by deleting a channel).

Final Day (2014/08/05)
[14h01]: Well, I tried to "debug" the errors that occur when deleting channels and performing system update:
 * Deleting channel: when you delete a channel, Dolphin correctly emulates the behaviour and remove the channel data from NAND too, however, title.tmd of that channel are not deleted and remain in the NAND (for example, NA version of Internet channel is stored in "User\Wii\title\00010001\48414445\content", deleting the channel through Wii Menu will delete all content of that folder, except title.tmd). In Wii Menu 3.0 or newer it'll simply ignore this file and continue working normally, however, in Wii Menu 2.2 or older, after deleting a channel you'll always get a black screen saying "The system files are corrupted. Please refer to Wii Operations Manual for help troubleshooting." In that case, manually deleting title.tmd that was left here fixes this problem and Wii Menu works again.


 * System update: again, the data isn't consistent. From the many testings across the various revisions, the update will always fail either with a 32004 error or a 32017 error (and they're not tied to a specific menu version, you can randomly get any of these errors in any menu version and they may randomly change in furter retries). If it fails with a 32017 error, you'll just return to Wii Menu and everything remains functional. If you get a 32004 error, Dolphin may crash with the message "HLE system tried to call an undefined HLE function: 280152" and your SYSCONF may get corrupted (but again, they're not tied, you can get SYSCONF corruption without Dolphin crash or Dolphin may crash without corrupting SYSCONF). The next time you load Wii Menu or any Wii software, you may get crashes at boot depending of how SYSCONF got corrupted or everything will simply works without problems. In any case, if you got error 32004 while performing an update and then Dolphin keeps crashing at boot, deleting SYSCONF in User\Wii\shared2\sys fixes that.

[17h20]: So, Wii Menu Saga is finally over, I'll keep this page alive for archival purposes. Thanks for reading!