Rétro-ingénierie du système, cassage du 'chiffrement' interne pour empêcher de modifier les fichiers systèmes ou même les jeux dans la puce Flash.
Améliorations techniques et de programmation.
DISCLAIMER
Je vais volontairement occulter des éléments : ne montrer que la faisabilité de plusieurs techniques logicielles et matérielles (à ce jour) sur un système fermé, afin de pouvoir y apporter des améliorations conséquentes.
Ce que je présente n'est pas destiné à être vendu et n'est pas destiné à être publié autrement qu'à des fins de recherches (à titre purement expérimentales).
Version courte
J'ai réparé les erreurs de conception de la
Famicom Mini.
Vous pouvez aller voir ailleurs.
Version longue
Le version japonaise de cette réédition comporte une exclusivité par rapport à la version Europe/USA.
Certains des jeux sont des copies provenant du support
Famicom Disk System (système à disquettes magnéto-optiques), qui venait se greffer en sus de la
Famicom.
Le
Famicom Disk System avait aussi la particularité de pouvoir étendre la partie sonore de la
Famicom avec deux canaux sonores supplémentaires - permettant des effets plus nombreux et plus détaillés (particulièrement utilisés sur des jeux comme
Akumajou Dracula - Castlevania,
Metroid ou encore
The Legend of Zelda 2 - Link no Bouken).
Effets sonores qui ont été coupés au montage dans leurs sorties internationales, car l'accessoire n'est jamais sorti de l'archipel.
Ainsi que l'instauration de codes de sauvegarde ou piles pour conserver les avancées de parties au lieu de l'écriture sur le disque.
Exemple d'un Famicom Disk System connecté à la Famicom
En tâtonnant un peu dans les débuts - recherchant les documentations techniques à l'aide des numéros de série de chaque élément, je suis allé un peu plus loin en passant plusieurs des puces à l'acide nitrique et rinçage à l'acétone (technique dite du
decapping chimique).
Pas de puces custom trouvées sous l'époxy : nous sommes bien dans un système assez connu, proche de ce qui se fait avec, par exemple, les
Raspberry PI.
Système à base de
SoC AllWinner R16 principalement, très peu coûteux et rentabilité maximale.
En premier lieu, après avoir exposé à jour les puces, il est déjà temps de la copie intégrale de la puce Flash.
Une fois la copie effectuée (je ne détaille pas pour des raisons de légalité, éviter que des copies ne traînent sur le Net et que des
bootlegs ne sortent), il m'est nécessaire d'analyser le code et trouver éventuellement des motifs connus sous forme hexadécimale ou même des erreurs classiques de chiffrement - laissant apparaître des morceaux de code mal cachés (simple
scrambling XOR dans notre cas, pour les plus connaisseurs dans ce domaine).
Chiffrement qui n'a pas tenu la journée, le plus basique qui existe en protection.
Vient le temps de comprendre la structure et l'organisation interne des fichiers que l'on y découvre.
Vous pouvez voir sur des sites spécialisés la version du noyau Linux, ainsi que les fichiers, mais je ne détaille pas non plus ici.
Ce qui m'intéresse : la comparaison des fichiers de jeux
Famicom Disk System utilisés par
Nintendo, par rapport à des extractions [privées] de disquettes
Nintendo réalisées l'année passée (encore sous blister, car les disquettes se modifient dès la première lecture/écriture - un peu comme les disquettes
Atari ST ou
Amiga).
La comparaison des fichiers sous un éditeur hexadécimal m'a permis de valider ces extractions privées par rapport aux jeux présents dans la
Famicom Mini.
Il n'existe aucune copie desdits fichiers, ni diffusion de la méthode d'extraction à ce jour dans le public (ni software, ni hardware) mais on obtient les mêmes fichiers à l'octet près, ainsi que les codes de parité non présents des copies du Net; les versions de fichiers concordent + mêmes dates de compilation.
J'ai tenté d'utiliser une disquette corrompue et d'injecter le jeu extrait de la
Famicom Mini, puis celle de ma disquette originale. Les deux fonctionnent parfaitement sur la console d'origine.
La
Famicom Mini m'aura déjà permis de valider une théorie sur le format et les informations à conserver, ainsi que la possibilité de recréer des originaux si un jour il serait nécessaire pour la préservation du patrimoine vidéoludique.
"
Je ne compte pas sur cette industrie pour préserver son patrimoine" (Frank Cifaldi, lors d'une conférence sur la récreation des 6 premiers Mega Man chez Eclipse en 2014).
A contrario, les copies provenant du Net sont faites avec des exemplaires souvent incomplets ou partiellement modifiés pour diverses raisons (corruptions dans le temps, signatures des copies, machines défaillantes lors de la copie, disquettes en mauvais état, poussières ou traces de doigts sur la partie magnétique...).
Voire provenant d'un support mal effacé précédemment - morceaux de plusieurs jeux mélangés (le format permettait de changer le jeu dans la disquette en la rapportant en magasin sur une borne spéciale
Disk Writer et en faisant changer les étiquettes - pour l'équivalent actuel de quelques euros).
Borne Disk Writer
Véritable plaie dans les tentatives de sauvegarde du patrimoine vidéoludique au format numérique car impossible de savoir ce qu'il y a sur une disquette sans l'avoir testée avant achat (souvent pas le bon jeu, car les gens n'ont pas changé les étiquettes).
Par contre, pour les jeux provenant de cartouches plus classiques, il s'agit bien de copies provenant du Net.
Je retrouve des entêtes de démarrage pour émulateurs dans les jeux, chose qui ne devrait pas exister si les fichiers provenaient des archives de Nintendo ou des éditeurs tiers.
La véritable raison où je parle de ces travaux sur un site spécialisé dans la promotion du matériel audio et HiFi.
Je n'étais pas satisfait de la partie émulation sonore de la console en premier constat en lançant la machine; les musiques des jeux sont déformées par l'implantation d'origine de la puce 2A03.