Dans un projet audacieux qui ravira les passionnés de hardware rétro, un développeur nomme Francis Ayala Le Brun a réussi l’exploit de recréer la célèbre carte graphique 3dfx Voodoo 1 entièrement en FPGA à l’aide de SpinalHDL. Contrairement à une simple émulation logicielle, cette reconstruction vise une réplique exacte du pipeline hardware, comprenant 430 registres, un pipeline graphique complet, et la capacité de faire tourner nativement des jeux comme Quake ou Screamer 2.
Ce défi technique ne résidait pas uniquement dans la reproduction du code, mais surtout dans la maîtrise du timing hardware. En effet, chaque registre réagit différemment selon le moment précis du cycle d’horloge, ce qui peut entraîner des corruptions de pixels si mal géré. Après plusieurs mois de débogage et l’utilisation de l’outil Conetrace, l’auteur a pu identifier et corriger des micro-erreurs de précision qui, séparément invisibles, engendraient des artefacts complexes. Ce travail minutieux démontre la complexité hors norme de la reproduction d’un GPU à l’état brut.
Assembler un GPU complet avec ses subtilités de timing en RTL moderne, c’est une prouesse technique impressionnante qui dépasse la simple émulation logicielle.
SpinalVoodoo implémente diverses fonctionnalités du Voodoo 1, telles que textures, transparence, brouillard et gestion du profondeur (depth buffer). Cependant, certains éléments ne sont pas encore opérationnels, comme le contrôleur d’affichage VGA, le filtrage trilinéaire ou la gestion multi-texture. De plus, aucune licence spécifique n’a été mentionnée pour le code dans le dépôt, ce qui limite sa réutilisation immédiate pour d’autres projets.
Le projet de Francisco Ayala Le Brun s’inscrit dans une gamme d’initiatives visant à préserver ou recréer du hardware rétro à l’aide de FPGA. Après avoir conçu sa propre carte mère 486 ou une console de retrogaming comme la Game Bub, il pousse encore plus loin la reconstruction minutieuse d’un GPU dédié. La réussite de cette entreprise montre qu’une seule personne, avec des outils RTL modernes, peut reproduire un GPU complet, avec son pipeline fixe et ses subtilités de timing, ce qui est une prouesse rarement vue dans le domaine hardware.
Les implications de cette réalisation sont nombreuses : elle ouvre la voie à des expérimentations plus précises sur l’architecture du GPU, la restauration de vieux jeux dans leur environnement d’origine, et la compréhension approfondie des subtilités du matériel graphique historique. Via des liens comme cet article ou ce reportage, on peut suivre l’évolution de ce projet étonnant. Bien que le contrôleur VGA et certaines fonctionnalités avancées manquent encore, la capacité à faire tourner des jeux comme Quake de façon fidèle est une étape majeure dans la reconstitution hardware de cette époque dorée du gaming.
