Introduction

L'article présente une analyse technique de l'appareil ME2, un dispositif portable qui utilise une connexion USB pour synchroniser des points et des gemmes entre l'appareil et un monde en ligne. L'auteur, qui est à la tête d'un projet de préservation d'un jeu similaire, a décidé de se lancer dans le reverse engineering de l'appareil ME2.

Contexte Technique

L'appareil ME2 utilise une connexion USB pour communiquer avec un ordinateur, mais le logiciel et les pilotes nécessaires pour cette communication n'ont pas été archivés. L'auteur a donc décidé d'ouvrir l'appareil pour accéder à son firmware. Le firmware est stocké sur une puce flash SST39VF3201, mais le microcontrôleur est caché sous une goutte d'époxy, ce qui rend difficile l'identification de la puce.

L'auteur a utilisé un outil de reprogrammation de flash pour extraire le contenu de la puce flash, mais a rencontré des difficultés pour désouder la puce sans l'endommager. Il a finalement utilisé une station de rework pour désouder la puce et extraire son contenu.

Analyse et Implications

L'auteur a analysé le contenu de la puce flash et a trouvé des images qui seraient normalement affichées sur l'appareil. Cependant, il n'a pas pu identifier le jeu d'instructions utilisé par l'appareil, ce qui rend difficile le reverse engineering du code. L'auteur a utilisé l'outil Ghidra pour analyser le code, mais n'a pas pu identifier le type de processeur utilisé.

L'auteur a trouvé un extrait de code qui semble être lié à la communication USB, mais n'a pas pu identifier le reste du code. Il a conclu que le code USB est probablement stocké dans la ROM du microcontrôleur, mais qu'il n'a pas les outils nécessaires pour accéder à cette ROM.

Perspective

L'auteur a conclu que le reverse engineering de l'appareil ME2 est un défi important, mais que les résultats pourraient être intéressants. Il a souligné l'importance de préserver les anciens jeux et appareils, et a appelé à la collaboration pour aider à comprendre le fonctionnement de ces appareils.