L’été dernier, j’avais voulu écrire un truc sur Crash Bandicoot, mais c’était tellement creux et vide que j’ai pas réussi.
- Mortal, pas nostalgique
Dojodirect
Des jeux de merde joués par des connards en direct !
Démarrez Swiss sur GameCube sans modifier la machine
Le GameCube est resté inviolé pendant de nombreuses années avant de tomber complètement sous les coups des hackers : d’abord grâce à une faille dans Phantasy Star Online I+II, puis par des méthodes matérielles (ajout de puces, modification de la carte mère, etc…). Mais le hardware du GameCube fait qu’il est en réalité assez facile de lancer des logiciels maison (homebrews) sans avoir à ouvrir les entrailles de la bête.
Le GameCube a une petite particularité par rapport aux autres consoles de même génération : il n’a aucun système de signature de code. La plupart des consoles à partir de la Xbox dispose d’un système de ce type : tout exécutable qui souhaite accéder au CPU pour pouvoir tourner (que ce soit des jeux ou des applications) doit être signé par le constructeur. Dans le cas contraire, la console (non-modifiée) refusera d’exécuter le code.
Pour le GameCube, c’est un peu différent : Nintendo est parti du principe que le support mini-DVD, qu’ils maîtrisaient parfaitement, et le format propriétaire des cartes mémoires, étaient une protection suffisante.
Il n’est donc pas indispensable de signer du code pour l’exécuter sur GameCube, il faut juste trouver un moyen de l’injecter.
Pour vous donner un exemple concret, Phantasy Star Online I+II utilisait des serveurs chez SEGA pour télécharger les mises à jour de l’exécutable qui étaient stockées sur la carte mémoire GameCube. Pour arriver à exécuter n’importe quel code, il suffisait donc de se faire passer pour les serveurs de SEGA et le jeu venait télécharger et exécuter n’importe quoi !
Aujourd’hui, les méthodes sont heureusement bien plus simples…
La scène GameCube est hyper active depuis plusieurs années maintenant et a mis au point toutes une bardée d’outils permettant de faire faire des choses intéressantes au cube violet de Nintendo :
Et celui qui va nous intéresser : Swiss. Comme son nom l’indique, Swiss a pour vocation d’être un véritable couteau suisse pour GameCube ! Il permet (entre autres) :
C’est cet outil que nous allons utiliser pour une tâche bien précise : forcer le lancement d’un jeu 50Hz seulement en 60Hz (pour le fun et le confort des yeux).
Comme vous l’avez compris maintenant, il faut et il suffit d’arriver à faire manger l’exécutable Swiss à un GameCube standard. Pour ce faire, nous allons donc l’installer directement sur une carte mémoire GameCube en utilisant notre Wii hackée de la dernière fois et il vous faudra en plus :
Il vous faudra également un des jeux suivants :
Oui, au cas où vous ne l’auriez pas encore deviné : on va se servir d’une sauvegarde vérolée exprès pour pouvoir lancer Swiss depuis un jeu commercial. L’idée est la suivante : on installe la sauvegarde pourrie et l’exécutable Swiss sur une carte mémoire GC ; on démarre le jeu, on charge la partie et boum ! Swiss démarre à la place du jeu. À partir de ce moment-là, on peut changer de galette, changer les options de lancement du jeu, etc.
Pour la démonstration, j’utiliserai Splinter Cell. D’abord parce que c’est probablement un des moins chers de la liste et ensuite parce que j’aime bien montrer des trucs avec des jeux BuggySoft. Et nous allons lancer Prince of Persia: Les Sables du Temps en 60Hz au lieu du 50Hz disponible pour le jeu.
On va récupérer la carte SD de la Wii hackée et placer dessus l’exécutable Swiss, et la sauvegarde plombée du jeu.
Pour cela, récupérez la dernière archive de Swiss (il s’agit du fichier 7z, swiss_r649.7z
à l’heure où j’écris ces lignes), extrayez-la dans un coin et cherchez le fichier nommé boot.gci
dans le dossier GCI
à la racine.
Ce fichier doit être placé dans un répertoire nommé MCBACKUP
(précisément comme ça, tout en majuscule) à la racine de la carte SD de la Wii hackée.
Pour la sauvegarde, tout est disponible ici, il suffit de fouiller dans les répertoires. En ce qui me concerne, j’ai donc été prendre le fichier d’archive contenant la sauvegarde bidouillée de Splinter Cell.
À l’intérieur, il faut récupérer le fichier gcep.gci
qui correspond à une sauvegarde de la version PAL du jeu (pour certains jeux, cela a une importance, pour d’autres non). Si ça peut vous aider à trouver la vôtre, généralement, les sauvegardes pour les versions PAL se terminent par un p. Ce fichier doit être déposé dans le même répertoire MCBACKUP
dans notre carte SD.
On va maintenant récupérer la dernière version de GCMM
(oui, ça veut dire GameCube Memory Manager), la dézipper dans un coin et le récupérer le dossier gcmm
dans le dossier apps
de l’archive et le placez dans le dossier apps
déjà présent sur la carte SD.
Normalement à partir de là, tout est prêt : on a de quoi écrire sur la carte mémoire, on a un fichier de sauvegarde hacké et on a Swiss.
Insérez la carte mémoire GameCube vierge (ou formatez-la, peu importe du moment qu’elle est vide) et la carte SD dans la Wii. Démarrez la chaîne Homebrew, démarrez GCMM et allez restaurer les deux fichiers GCI (Swiss et le jeu de votre choix, Splinter Cell dans mon cas) :
Note : naviguer dans l’interface de
GCMM
se fait avec une Wiimote ou une manette GameCube. La copie a été accélérée pour la vidéo, cela peut prendre plusieurs minutes dans la réalité.
Pour la démonstration, voici ce que donne le lancement standard de Prince of Persia: Les Sables du Temps :
Comme vous pouvez le voir, le jeu démarre en 50Hz sans possibilité de basculer en 60Hz (ni dans les menus, ni en maintenant la touche B au démarrage de la console).
Nous allons maintenant mettre notre carte mémoire spécialement préparée pour l’occasion dans le port 1 du GameCube ainsi que le disque de Splinter Cell. On démarre et on essaie de charger la sauvegarde du jeu :
Surprenant, non ;) ? Maintenant qu’on a un GameCube démarré avec Swiss, il suffit de remettre notre disque de Prince of Persia et de jouer avec les options de démarrage du jeu :
À vous les plus grandes folies : forcer Super Mario Sunshine en 16/9, démarrer des jeux en 60Hz, démarrer des jeux japonais ou américains et même démarrer directement des jeux depuis une carte mémoire ou une carte SD branchée dans un adaptateur de carte mémoire.
Swiss sait tout faire, et gratuitement par dessus le marché !
Et le plus beau là-dedans, c’est que vous venez de vous fabriquer un kit de boot Swiss qui marchera sur tous les GameCubes (à condition d’être capable d’y lire le jeu choisi pour l’exploit) : il suffit d’avoir la carte mémoire et le jeu avec la sauvegarde modifiée correspondante !
Et bien entendu, vous n’êtes pas obligé de vous arrêter là : vous pouvez démarrer n’importe quel exécutable avec la même méthode, il est donc tout à faire possible de faire une carte mémoire dédiée à GBI, un émulateur ou autres.
Par Mortal
Le 13 juin 2019 | Catégories : Editos
Je le couperai au montage…Voir les articles de Mortal
A voir également
Les trucs qu'on a rédigés avec nos petits doigts potelés
Dojodirect
Des jeux de merde joués par des connards en direct !