Des jeux PS2 recompilés en WebAssembly
Original : Show HN: PS2 games statically recompiled to WebAssembly
Pourquoi c'est important
La recompilation statique ouvre une voie de préservation sans émulateur classique.
Un développeur a publié ps2-web-recomp, un projet open source qui traduit le code machine PS2 en C++, puis en WebAssembly, pour faire tourner des jeux comme Gran Turismo 4 directement dans le navigateur, sans émulateur.
Le projet ps2-web-recomp, disponible sur GitHub avec déjà 254 étoiles, adopte une approche dite de recompilation statique : le code machine de l'Emotion Engine (le CPU de la PS2) est traduit en avance de phase en C++, puis compilé en WebAssembly. Un runtime réimplémente le système d'exploitation et le matériel de la console, avec un rendu via WebGPU.
Le premier titre porté est Gran Turismo 4, choisi pour sa difficulté technique : il sollicite les deux unités vectorielles de la PS2, exige une arithmétique en virgule flottante exacte pour ses replays, et utilise des effets graphiques complexes. Le résultat tourne à 50 images par seconde (version PAL) dans Chrome sur un GPU intégré, au double de la résolution native. La sauvegarde fonctionne via un memory card virtuel stocké dans le navigateur.
Le projet est le pendant PS2 de psp-web-recomp, un travail antérieur du même auteur qui appliquait la même méthode à la PSP. Le code source est publié sous licence MIT.