Remise à niveau du hack

Aujourd’hui, nous allons nous intéresser à redonner un peu d’ordre dans les entrailles d’une Wii, histoire de lui dépoussiérer les bielles et effacer les bêtises de certains logiciels dont je ne citerais pas le nom. Le but du jeu va donc être de restaurer/instaurer un hack propre, sain, logique.

1/ Analyse de la console

On va commencer par faire un petit bilan du système interne de la console : System Menu, IOS, mIOS, etc. Pour ce faire, rien de plus simple, téléchargez syscheck, décompressez-le sur votre carte SD, lancez-le depuis Homebrew Channel et lancez un scan. Il va analyser tout ce petit monde, puis générer un fichier CSV recensant les entrailles de la bête.

Voilà le genre de catastrophe à laquelle on peut s’attendre. Attention, vous pourriez saigner des yeux :

Region: PAL
Menu Systeme 4.3E (v514)
Priiloader installe
Date de disque: 09.07.2006
Chaine Homebrew 1.1.0 utilise IOS58

Hollywood v0x11
Identifiant de la console:
Type de Console: Wii
Pays de la chaine boutique: Spain (105)
Boot2 v4
121 titres trouves.
49 IOS trouves sur cette console. 6 sont des stubs.

IOS4 (rev 65280): Stub
IOS9 (rev 1034): Trucha Bug
IOS10 (rev 768): Stub
IOS11 (rev 16174): Trucha Bug, Acces NAND
IOS12 (rev 526): Trucha Bug
IOS13 (rev 1032): Trucha Bug
IOS14 (rev 1032): Trucha Bug
IOS15 (rev 1032): Trucha Bug
IOS16 (rev 512): Stub
IOS17 (rev 1032): Trucha Bug
IOS20 (rev 16174): Trucha Bug, Acces NAND
IOS21 (rev 1039): Trucha Bug
IOS22 (rev 1294): Trucha Bug
IOS28 (rev 1807): Trucha Bug
IOS30 (rev 16174): Trucha Bug, Acces NAND
IOS31 (rev 3608): Trucha Bug
IOS33 (rev 3608): Trucha Bug
IOS34 (rev 3608): Trucha Bug
IOS35 (rev 3608): Trucha Bug
IOS36 (rev 3608): Trucha Bug, ES Identify, Acces NAND
IOS37 (rev 5663): Trucha Bug
IOS38 (rev 4124): Trucha Bug
IOS40 (rev 3072): Stub
IOS41 (rev 3607): Pas de patches
IOS43 (rev 3607): Pas de patches
IOS45 (rev 3607): Pas de patches
IOS46 (rev 3607): Pas de patches
IOS48 (rev 4124): Pas de patches
IOS50 (rev 14889): Trucha Bug, Acces NAND
IOS51 (rev 4864): Stub
IOS52 (rev 5888): Stub
IOS53 (rev 5663): Trucha Bug
IOS55 (rev 5663): Trucha Bug
IOS56 (rev 5662): Trucha Bug
IOS57 (rev 5919): Trucha Bug
IOS58 (rev 6176): USB 2.0
IOS60 (rev 16174): Trucha Bug, Acces NAND
IOS61 (rev 5662): Pas de patches
IOS62 (rev 6430): Trucha Bug
IOS70 (rev 16687): Trucha Bug, Acces NAND
IOS80 (rev 6944): Trucha Bug, Acces NAND
IOS202[60] (rev 65535, Info: Hermes-v55.1): Trucha Bug, Acces NAND, USB 2.0
IOS222[38] (rev 65535, Info: Hermes-v55.1): Trucha Bug, ES Identify, Acces NAND, USB 2.0
IOS223[37] (rev 65535, Info: Hermes-v55.1): Trucha Bug, Acces NAND, USB 2.0
IOS224[57] (rev 65535, Info: Hermes-v55.1): Trucha Bug, Acces NAND, USB 2.0
IOS249[56] (rev 21010, Info: d2x-v10beta52): Trucha Bug, Acces NAND, USB 2.0
IOS250[57] (rev 65535, Info: d2x-v10beta52): Trucha Bug, Acces NAND, USB 2.0
IOS251[58] (rev 21010, Info: d2x-v10beta52): Trucha Bug, Acces NAND, USB 2.0
IOS254 (rev 65281): BootMii
BC v6
MIOS v10

Comme on peut le constater, tous les IOS ont été patchés à la truelle avec « Trucha bug », ce qui peut provoquer bugs, instabilités et surtout empêcher Homebrew Channel de s’installer ou démarrer. Cerise sur le gâteau, ce patchage est totalement INUTILE (à croire que certains logiciels sont restés bloqués en 2009, à l’époque de cioscorp/darkcorp). Il va donc falloir remettre un peu d’ordre dans tout ce bazar ! Le plan d’attaque est simple, il suffit de suivre mon code couleur :

vert : OK
violet : réinstallation
rouge : suppression

Nota :

  • les IOS marqués « stub » peuvent être gardés tel quel (raison pour laquelle je les ai mis en vert), mais ils peuvent également être supprimés, ils n’ont aucune utilité.
  • les IOS de la tranche 40 sont réservés aux Wii coréennes. Ils ne serviront jamais et peuvent être, au choix, gardés pour la déco, ou supprimés (ils font partie du package officiel des mises à jour, même sur nos consoles européennes qui n’en ont rien à faire).
  • les IOS de chaque dizaine sont dédiés aux System Menu successifs. Référez vous au tableau en début de chapitre 3 pour savoir lequel vous utilisez (en fonction de votre System Menu), et surtout, pour NE PAS Y TOUCHER (ça mord, c’est le brick à portée de main). Tous les autres sont inutiles et peuvent être supprimés ou réinstallés (ce qui mettra un stub).
  • Le fait de maintenir Trucha sur l’IOS80 permet d’utiliser la fonction (moisie) d’import/export des chaînes vers/depuis la carte SD. C’est dispensable MAIS ça évitera toute déconvenue. En effet, si cet IOS n’est pas patché Trucha, l’export des chaînes de la NAND vers SD fonctionnera, mais l’opération inverse sera interdite avec toute chaîne non signée (forwarder, HBC, etc.) et celles-ci ne pourront pas non plus être lancées de la SD. Bref, trucha signer cet IOS est un parapluie, au cas où.

Avant d’aller plus loin, rappelons qu’un formatage de la console ne fera pas du tout le ménage dans les IOS. Ne tombez pas dans la facilité en pensant vous en tirer si facilement. Tout ce qu’un formatage provoquera, c’est la perte des points d’accès aux homebrews (chaîne homebrew, forwarders, etc.), et ce serait vraiment ballot.

2/ Récupération des fichiers nécessaires

Pour réinstaller proprement les IOS, de manière quasi automatisée, la meilleure solution reste de passer par Yet Another Wad Manager Mod (ou manager de WAD équivalent) après avoir récupéré tous les IOS incriminés. LE gros plus de ce logiciel, c’est qu’il supporte l’installation par paquet d’un ensemble de WAD mis dans un même dossier, très pratique quand on en a une bonne trentaine à réinjecter !

Deux solutions s’offrent à vous pour récupérer les IOS :

  • ouvrir, avec Wiibrowse, l’ISO d’un jeu contenant la mise à jour qui nous intéresse. Dans notre exemple, c’est la 4.3E que l’on veut.

 

Quelques références de jeux desquels vous pourrez extraire les fichiers de mise à jour, avec Wiibrowse :

 

 

 

 

  • utiliser NUS Downloader avec les scripts que j’ai écrit pour télécharger directement les IOS depuis les serveurs de Nintendo.

    1. Cocher la case « Pack WAD »
    2. Aller dans Scripts > Scripts (Local) et choisir en fonction de la version de votre console
    3. Laisser l’application télécharger l’ensemble des fichiers.
  1. Dans le répertoire Scripts, un sous-dossier (du même nom que le script utilisé) contient l’ensemble des fichiers
  2. Rechercher « WAD » pour filtrer les fichiers intéressants

Attention ! Mes scripts téléchargent également le System Menu ainsi que son IOS associé, les fichiers BC et mIOS. N’en tenez pas compte pour la suite de ce tutorial.

3/ Réinstallation des IOS

Avant de poursuivre, quelques conseils pour éviter les drames :

  1. NE JAMAIS TOUCHER À L’IOS DU SYSTEM MENU. Brick assuré si vous ne m’écoutez pas ! (*)
  2. Les IOS de chaque dizaine sont réservés aux System Menu successifs. IOS60 pour SM4.1, IOS70 pour SM4.2, IOS80 pour SM4.3, etc.
  3. Toujours se référer à cette page si vous avez un doute sur l’utilité d’un IOS.
  4. Toujours se référer à cette page pour savoir avec quel IOS tourne votre System Menu.

(*) Si vous optez pour le patchage trucha de l’IOS de votre System Menu, respectez une règle très simple : Effectuez le patchage avec Dop-Mii, vérifiez bien que le logiciel ne vous retourne AUCUNE ERREUR. S’il y a la moindre erreur, pas de panique. Tant que vous ne quittez pas Dop-Mii (ou Homebrew Channel), la console continuera de fonctionner. Vous pouvez réessayer de patcher votre IOS, ou jouer la carte de la sécurité et réinstaller votre IOS.

 

Voici un tableau récapitulatif pour les System Menu et leur IOS associé, par ordre décroissant :

System Menu IOS
4.3 80
4.2 70
4.1 60
4.0 60
3.4 50
3.3 30
3.2 30
3.1 30
3.0 30

Réinstaller l’IOS du System Menu reste bien évidemment possible, votre console ne va pas s’enflammer spontanément, mais sachez que toute mauvaise manipulation sur cet IOS provoquerait un brick au prochain démarrage de la console (tant que vous gardez la console allumée, il est possible de récupérer l’erreur en relançant l’installation de l’IOS, par exemple).

Et même si ce n’est pas l’objet de ce tutoriel : Ne tentez JAMAIS de downgrader vers un firmware 3.x une console qui était à l’origine (en sortie d’usine) en 4.x sous peine de hard brick irrémédiable (sans un dump clean).

Maintenant que les mises en garde ont bien été rappelées et que vous avez les fichiers WAD nécessaires :

  1. Placer les fichiers WAD de tous les IOS (pas le System Menu ni son IOS associé) sur votre carte SD, dans un répertoire IOS (par exemple)
  2. Lancer YAWMM par le moyen de votre choix (indice pour nos téléspectateurs : Homebrew Channel se fera une joie de vous aider)
  3. Si la question sur AHBPROT apparaît, répondre « YES »
  4. Naviguer jusqu’au répertoire « IOS » et faire une installation en masse (bouton à confirmer).
  5. Laisser le logiciel faire tout le boulot…
  6. Quitter YAWMM

 

4/ Rafraîchissement des cIOS

développer un paragraphe sur l’installation des cIOS d2x, v10 beta53 (le meilleur) > v10 beta52 (si 53 incompatible avec HDD) > v8 finale (si beta52 incompatible avec HDD)

5/ Résultats

Une fois que tout est normalement installé comme il se doit, refaites un syscheck pour vérifier. Voilà ce que vous devriez obtenir (exemple du System Menu 4.3), plus ou moins. Les IOS stub/inutiles, surlignés en rouge, ont été gardés (mais peuvent être supprimés, si vous êtes du genre minimaliste comme moi) et le cIOS a été upgradé à la version 10 beta 53 :

IOS4 (rev 65280): Stub
IOS9 (rev 1034): Pas de patches
IOS10 (rev 768): Stub
IOS11 (rev 256): Stub
IOS12 (rev 526): Pas de patches
IOS13 (rev 1032): Pas de patches
IOS14 (rev 1032): Pas de patches
IOS15 (rev 1032): Pas de patches
IOS16 (rev 512): Stub
IOS17 (rev 1032): Pas de patches
IOS20 (rev 256): Stub
IOS21 (rev 1039): Pas de patches
IOS22 (rev 1294): Pas de patches
IOS28 (rev 1807): Pas de patches
IOS30 (rev 2816): Stub
IOS31 (rev 3608): Pas de patches
IOS33 (rev 3608): Pas de patches
IOS34 (rev 3608): Pas de patches
IOS35 (rev 3608): Pas de patches
IOS36 (rev 3608): Pas de patches
IOS37 (rev 5663): Pas de patches
IOS38 (rev 4124): Pas de patches
IOS40 (rev 3072): Stub
IOS41 (rev 3607): Pas de patches
IOS43 (rev 3607): Pas de patches
IOS45 (rev 3607): Pas de patches
IOS46 (rev 3607): Pas de patches
IOS48 (rev 4124): Pas de patches
IOS50 (rev5120): Stub
IOS51 (rev 4864): Stub
IOS52 (rev 5888): Stub
IOS53 (rev 5663): Pas de patches
IOS55 (rev 5663): Pas de patches
IOS56 (rev 5662): Pas de patches
IOS57 (rev 5919): Pas de patches
IOS58 (rev 6176): USB 2.0
IOS60 (rev 6400): Stub
IOS61 (rev 5662): Pas de patches
IOS62 (rev 6430): Pas de patches
IOS70 (rev6912): Stub
IOS80 (rev 6944): Trucha Bug, Acces NAND
IOS202[60] (rev 65535, Info: Hermes-v55.1): Trucha Bug, Acces NAND, USB 2.0
IOS222[38] (rev 65535, Info: Hermes-v55.1): Trucha Bug, ES Identify, Acces NAND, USB 2.0
IOS223[37] (rev 65535, Info: Hermes-v55.1): Trucha Bug, Acces NAND, USB 2.0
IOS224[57] (rev 65535, Info: Hermes-v55.1): Trucha Bug, Acces NAND, USB 2.0
IOS249[56] (rev 21010, Info: d2x-v10beta53): Trucha Bug, Acces NAND, USB 2.0
IOS250[57] (rev 65535, Info: d2x-v10beta53): Trucha Bug, Acces NAND, USB 2.0
IOS251[58] (rev 21010, Info: d2x-v10beta53): Trucha Bug, Acces NAND, USB 2.0
IOS254 (rev 65281): BootMii
BC v6
MIOS v10

Je n’aurais que ces quelques mots pour conclure : le meilleur des hacks reste celui qui touche le moins possible au système originel ! Fuyez comme la peste les logiciels attrape-nigots qui font n’importe quoi dans votre système.