Un exploit notable. Un joueur du nom de Tobi a réussi à faire tourner Super Mario 64 dans un PDF, le célèbre format Adobe dédié à la lecture de document. Ce format exploite le JavaScript, offrant des capacités vidéoludiques. Le projet n’est pas isolé. Il s’inscrit dans une longue série de portages improbables, des challenges qu’aiment relever les développeurs fous.
Dans une de ses vidéos sur YouTube, un développeur du nom de Tobi a révélé avoir réussi à transformer Super Mario 64 en fichier PDF, le célèbre format d’Adobe, grâce au JavaScript intégré au navigateur. C’est un exploit technique quasi inédit. Mais le joueur en a l’habitude. Il avait déjà créé un moteur maison pour faire tourner ledit jeu sur une Apple Watch, en touchant directement au code source.
Super Mario 64 tient dans un fichier d’environ 23 Mo
Tobi a commencé son bidouillage avec une version Game Boy de Minecraft, puis d’autres titres, avant de s’intéresser à Mario 64. Il a découvert qu’il était possible d’exécuter du code JavaScript à l’intérieur du logiciel d’Adobe, à condition que celui-ci soit ouvert dans un navigateur basé sur Chromium. Après avoir compris la manœuvre, le joueur a pu animer des éléments graphiques pour créer un véritable affichage dans le document PDF. Tout le jeu tient dans un fichier d’environ 23 Mo, exécutable via le navigateur et hors ligne. Évidemment, il ne faut pas s’attendre à de grosses performances graphiques. De l’aveu même de Tobi, le jeu est extrêmement lent, ne tournant qu’à seulement une ou deux images par seconde, avec un affichage en ASCII.
Super Mario 64 sur une PlayStation 1
Quoi qu’il en soit, c’est un véritable exploit quand on sait que le PDF est un format statique créé pour lire des documents, même si Adobe l’a rendu dynamique récemment. Pour rappel, le format PDF a été créé par Adobe dans les années 1990 pour standardiser l’échange de documents. Depuis, il a considérablement évolué, passant d’un dérivé simplifié de PostScript à une spécification complexe intégrant XML et le support JavaScript. C’est précisément ce dernier qu’exploite Tobi pour son Super Mario 64 intégré dans un PDF. Notons toutefois que ce n’est pas le premier portage bizarre du héros moustachu. Le titre a déjà été porté sur une PlayStation 1.
Doom également dans un fichier PDF
Pour sa part, Doom, sorti le 10 décembre 1993, tourne également désormais dans un PDF via une émulation DOSBox encapsulée dans le fichier, à 29 images par seconde. Ces dernières années, le jeu a même tourné sur des thermostats, des mijoteuses connectées, des calculatrices, des distributeurs de billets et même des bornes de recharge électrique.
Si ces démonstrations se multiplient et peuvent plaire, elles soulèvent aussi des questions sur l’évolution du standard PDF. En effet, l’intégration de JavaScript exécutable dans un format dédié à la lecture de document peut créer des problèmes de sécurité. On peut théoriquement exécuter n’importe quel code, y compris malveillant.





