ÉDITO : Le FPGA est-il l’avenir du retrogaming ?

MISTer

Après un édito sur le homebrew, il va cette fois être question de hardware car, si la préservation des jeux et logiciels constitue déjà un bien vaste chantier, il ne faudrait pas en oublier les machines sur lesquelles ils tournent… Rien n’est éternel, et une cartouche a beau bénéficier d’une bien meilleure durée de vie qu’une disquette, les composants se détériorent eux aussi et, à terme, les consoles et micro-ordinateurs ne fonctionneront pas davantage. Heureusement, il existe la solution de l’émulation mais, outre qu’elle ne restitue pas forcément le contexte d’époque (la durée des chargements, le contact physique des périphériques, etc.), en offrir une récréant à la perfection l’architecture d’origine est loin d’être simple, comme l’expliquait parfaitement le regretté Byuu dans un article dont on vous proposait la traduction l’an dernier. C’est pourquoi certains voient dans le FPGA, un processeur dans lequel il est possible de (re)programmer une architecture dans le détail du moindre composant, la voie à suivre pour préserver les machines d’antan et leur fonctionnement mais, comme on va le voir, ce n’est pas aussi simple que ça…

Si ce sigle était inconnu de la plupart des retrogamers il y a encore quelques années, il est difficile de ne pas en avoir entendu parler, ne serait-ce qu’avec le succès des consoles Analogue – surtout depuis la Nt Mini, qui était non seulement plus abordable que les précédentes, mais qui fut la première à reposer sur un FPGA et elle a donc fortement contribué à démocratiser cette technologie… En parallèle, il y a eu l’équivalent open source du MISTer, pour le moment plus populaire auprès de ceux qui n’ont pas peur de mettre les mains dans le cambouis, même s’il doit exister des solutions plug and play. Et cela ne se limite pas au domaine du jeu vidéo, d’autant que cette technologie a bien sûr commencé par avoir des applications dans le monde industriel… Au sein de l’association, notre président nous en parlait déjà quand je suis devenu membre fin 2007 et la fameuse Pauline, notre émulateur de lecteur de disquette universel, repose également dessus puisqu’elle dispose d’une carte mère DE10-Nano sur laquelle est aussi basé le MISTer. Elle utilise un Cyclone V appartenant à la gamme « bon marché » de FPGA d’Intel (autrefois Altera), et dont le principal concurrent sur le marché est Xilinx, racheté lui par AMD en octobre.

Pauline
Pauline est basé sur le FPGA Cyclone V

Ces acquisitions par les deux géants de l’électronique montrent bien l’importance qu’est en train d’acquérir cette technologie. Et dans le monde du retrogaming, même si cela devrait avant tout être un enjeu de préservation, le FPGA a déjà eu un énorme impact sur les consoles rétro, devenant un véritable faiseur de rois. On peut citer l’exemple de la Coleco Chameleon, sans doute la première à faire miroiter l’utilisation de cette technologie et ce, de manière ambitieuse car, comme son nom le suggérait, il était question que son CPU soit reprogrammé à chaque cartouche insérée. Mais le projet a rapidement sombré quand il est devenu clair que cela aurait rendu la machine trop chère. Et son équipe était en plus incapable de la maitriser puisque le spécialiste Kevin « Kevtris » Horton, sur lequel nous allons revenir, avait refusé de s’y joindre. Et même si l’initiative n’est pas vraiment comparable, il est évident que la Polymega a pris un sacré plomb dans l’aile quand il a été annoncé qu’elle reposerait finalement sur de l’émulation software. Car si la console a une excellente interface à faire valoir, elle pourrait dans l’absolu être proposée sur n’importe quel PC et offrir la même chose hormis les ports cartouches et manettes… Autrement dit, pour beaucoup de joueurs, c’était bien l’utilisation du FPGA qui la rendait digne d’intérêt.

Émulation hardware

Le FPGA, pour Field-Programmable Gate Array, est donc un processeur programmable et même d’autant plus reprogrammable qu’il ne mémorise rien ; il est programmé à chaque mise sous tension et son contenu, un core, doit donc être stocké à part. Mais tout cela n’a rien de magique et il est évident que plus une architecture est complexe, plus le cœur correspondant sera volumineux et nécessitera un modèle de FPGA performant, et donc cher. Quand la Super Nt est sortie,  c’était un petit exploit car la Super Nintendo est plus complexe de ce point de vue que la Mega Drive, et c’est ce qui rend son émulation plus délicate. Kevtris y est parvenu mais il ne restait « plus de place » pour ajouter au cœur les processeurs contenus dans certaines cartouches tels que le Super FX ou le SA-1. Par conséquent, si la console d’Analogue a été jailbreakée comme les autres et peut ainsi lire les ROMs, dans le cas des jeux concernés, il faudra utiliser les cartouches d’origine comme sur une vraie console – après tout, c’est le but et cela reste dans la légalité. De ce fait, ce n’est pas pour tout de suite que l’on verra des consoles Analogue émulant des machines notoirement compliquées comme la Saturn ou la Jaguar, même si la viabilité commerciale entre aussi en jeu. Certains passionnés travaillent bien de leur côté à des cœurs dédiés, toutefois.

Nt Mini
La Nt Mini a marqué un tournant pour Analogue et les consoles rétro en général

Actuellement, on trouve au moins des cœurs pour à peu près toutes les machines 8-bit, sur MISTer mais aussi sur Nt Mini, la seule console Analogue en attendant la Pocket qui dispose d’un deuxième FPGA que l’on peut librement reprogrammer. Ainsi, en mars 2017, Kevtris avait pu jailbreaker (officieusement) la console et fournir ses cœurs maison pour de nombreuses machines 8-bit. Mais cela n’a été possible que parce qu’il avait passé les dernières années à recréer ces hardware, à l’origine dans le but de concrétiser sa propre console basée sur le FPGA. Et pour programmer ces cœurs, il a utilisé un langage de description de matériel (HDL, hardware description language), ce qui veut dire que même si le résultat est une émulation hardware, il y a bien de la programmation derrière. Ainsi, le FPGA n’est pas obligatoirement synonyme d’authenticité comme beaucoup le croient, et tous les cœurs ne se valent pas. Néanmoins, la technologie présente l’avantage d’offrir une stabilité dans le résultat, quand l’émulation software dépend de la machine sur laquelle elle tourne – on vous renvoie encore à l’article de Byuu expliquant pourquoi il faut un CPU à 3 GHz pour émuler plus rigoureusement la Super Nintendo, mais rappelons que la grande majorité des jeux fonctionneront quand même sans cela… D’ailleurs, il est également plus facile de reproduire fidèlement la synchronisation entre les différentes composants à l’aide d’un FPGA, alors que c’est là la difficulté dans l’émulation de la 16-bit.

Mais Kevtris est lui aussi très perfectionniste, et il nous en a donné une preuve bluffante dans sa préparation du cœur Game Boy Advance de la future Pocket. La portable de Nintendo, une 32-bit pour rappel, n’est pas aussi bien émulée que les consoles des générations précédentes, et il a tenu à parer à tous ces cas un peu limite qui font que moins d’1% des ROMs vont crasher sur un MISTer. Et peut-être un peu plus ne vont pas fonctionner exactement comme sur une vraie console, afficher certaines choses différemment, mais la grande majorité des gens ne verront pas la différence… Kevtris a donc créé, pour tester la fidélité de son cœur au hardware d’origine, un set de ROMs poétiquement baptisé GBA Brutality. Comprenant 253 ROMs, il permet d’effectuer 630 millions (!) de tests qui prennent pas moins de trente quatre heures – processus relancé à chaque modification… Et si l’on peut discuter de la pertinence d’avoir conçu lui-même ces tests plutôt que de les avoir confiés à un tiers, la Pocket en passe 100% quand le cœur du MISTer (qui a peut-être été mis à jour depuis), n’arrivait qu’à 12,6%. Pour le coup, les émulateurs font mieux, Higan (créé par Byuu) en tête avec 32,8%, suivi de mGBA (utilisé par le GB Operator) à 24,8%. C’est impressionnant, mais cela fait d’autant plus regretter que les cœurs de Kevtris ne soient pas open source pour en faire bénéficier tout le monde comme ceux du MISTer, et c’est d’ailleurs ce qui explique la véritable guerre de clochers entre la communauté de ce dernier et Analogue.

Analogue Pocket

L’ingénieur de la matrice

Il faut dire que Kevin « Kevtris » Horton n’est pas vraiment n’importe qui… Pour mon édito précédent consacré au homebrew, j’avais essayé de déterminer la date de la création du kit de développement ColecoVision d’Amy Bienvenu. Je n’y étais pas parvenu mais, ce faisant, je suis tombé sur ce qui est censé être le tout premier jeu homebrew sur la console, en 1996, un clone de Tetris (1984) baptisé… Kevtris. Et non, l’ingénieur d’Analogue n’a pas choisi son pseudonyme parce qu’il est fan du jeu, mais bien parce qu’il en est l’auteur. Et ce n’est pas sa seule contribution à la scène homebrew, puisqu’il a également créé, par exemple, le format sonore NSF (NES Sound Format). Initialement pensé pour extraire la musique et les effets sonores des jeux NES, donc dans un but de préservation, il est aujourd’hui très largement utilisé par les développeurs comme par les musiciens de chiptune, qui ignorent sans doute dans leur grande majorité à qui ils le doivent. C’est aussi ce qui explique pourquoi il est enfin heureux de pouvoir gagner de l’argent grâce à ses compétences, acquises sur le tas. Né dans une famille très modeste de l’Indiana, il a grandi en faisant littéralement les poubelles pour trouver des composants électroniques et bricoler…

Discret et assez solitaire d’autant qu’il dit être atteint de prosopagnosie (un trouble de la reconnaissance des visages), Kevtris travaille surtout la nuit, sachant qu’il n’est pas employé par Analogue à temps plein puisqu’il a depuis le lycée un job de jour, ou plutôt d’après-midi, en tant qu’ingénieur dans une société de cryogénie. Perfectionniste comme on l’a vu, il est très protecteur de son travail, et pas tant prétentieux que critique de ses « concurrents » – qui le lui rendent bien pour certains… Comme on le disait plus haut, il a longtemps voulu créer sa propre console basée sur la technologie FPGA, appelée Zimba 3000 – nom qu’on espère temporaire, c’était avant qu’il bénéficie du marketing de l’équipe d’Analogue… Tout d’abord sollicité pour la Coleco Chameleon comme on le disait plus haut, dont il a tout de suite senti le manque de sérieux, il a préféré rejoindre en 2015 la société fondée quatre ans plus tôt par Christopher Taber, devenant ainsi son troisième employé (quinze aujourd’hui). Jusque-là, elle s’était fait connaître par des clones de luxe, la Black Label, une Neo·Geo MVS en bois, puis l’Analogue Nt, une NES en aluminium d’aéronautique qui a même eu une version plaquée or… Au départ recruté pour réaliser la carte HDMI de cette dernière, ayant signé le kit Hi-Def NES, il sera le moteur de la nouvelle version de la console, la Nt Mini. Et si elle ne coûte que $50 de moins que sa grande sœur, elle contient cette fois deux processeurs FPGA et intègre l’upscaler HDMI, tout en conservant sa robe en métal.

Analogue Nt plaquée or
La 24k Gold Analogue Nt a contribué à l’image bling-bling de la société…

Mais ce n’est vraiment qu’à partir de la Super Nt, alors que la société ne compte toujours que trois membres, qu’Analogue change de philosophie avec des machines aux coques désormais en plastique et ne dépassant jamais les $200… Certes, beaucoup de retrogamers continuent de penser que cela reste cher pour une console forcément d’appoint, d’autant que la manette n’est pas incluse et qu’il y a surtout pas mal de frais de port et taxes douanières qui s’y ajoutent, mais cela reste assez peu pour ce qu’elles offrent. C’est même à mon avis carrément bluffant pour la Pocket qui ne coûte que $10 de plus que les autres, alors qu’elle intègre des contrôles et un écran en tant que portable, même si la connectique HDMI disparaît car reléguée à un dock optionnel – et vendu séparément à $99 tout de même… Mais son écran de 3,5″, recouvert de verre renforcé Gorilla Glass affiche quand même une résolution de 1600×1440 soit 615 pixels par pouce – à comparer au 515 ppi du dernier Samsung Galaxy S21 ! Et la Pocket contient elle aussi deux FPGA

Cela étant, on peut clairement reprocher à Analogue de prétendre faire de la préservation avant tout, et surtout avoir de l’empathie pour ceux qui ont loupé la Pocket à l’ouverture des précommandes il y a près d’un an déjà. Néanmoins, la rupture n’était sans doute pas voulue même si le site a clairement connu des problèmes en raison de l’afflux massif. Ils n’ont mis en vente que ce qu’ils pensaient produire, et ils avaient visé encore trop haut puisqu’ils ont dû repousser la portable à octobre. D’après les estimations basées sur les numéros de commande, ils auraient écoulé dans les 30 000 exemplaires en l’espace de huit minutes seulement – pas mal pour une petite entreprise de quinze personnes. En fait, c’est sans doute un vrai réseau de distribution qui leur manque, qui permettrait aussi de limiter les coûts à l’import. Cela devrait néanmoins mieux se passer désormais et ils ont pu d’ailleurs constater, en remettant en vente quelques exemplaires de la Super Nt en avril, que de nombreux bots ont encore essayé (cette fois en vain) d’en acheter… Ils se sont également efforcés d’annuler les commandes des scalpeurs qui avaient mis aux enchères leurs Pocket. Et si Analogue cherche évidemment à donner l’impression qu’elle n’encourage pas le piratage de l’extérieur, il est clair que ses dirigeants savent bien que Kevtris jailbreake leurs consoles juste à leurs sorties pour qu’elles lisent aussi les ROMs. Et il y a fort à parier qu’il offrira les cores de nombreuses machines pour la Pocket comme il l’avait fait pour la Nt Mini

Boîtiers pour MISTer
Certains boîtiers pour MISTer ont de l’allure (mais d’autres moins)

MISTer et boule de gomme

D’ailleurs, la communauté MISTer attend elle aussi patiemment la sortie de la Pocket, et pas seulement pour accuser encore Kevtris de voler leurs cœurs (FPGA, hein ?) – vu l’opinion qu’il en a, cela serait étonnant qu’il l’ait fait… Non, c’est surtout qu’ils espèrent pouvoir mettre les leurs sur la portable, comme ils couvrent bien plus de machines (le MISTer utilisant le Cyclone V évoqué plus haut qui coûte dans les 200 € à lui seul) quoiqu’à des degrés plus ou moins avancés. En fait, et ça peut aussi expliquer cette rivalité, la différence entre le MISTer et les consoles Analogue est comparable à celle entre un PC et une console. Le premier est polyvalent et plus puissant, mais bien plus cher, moins facile et rapide d’utilisation, demandant un minimum de réglages ou de personnalisation. Et si la manière dont sont conçues les consoles d’Analogue peut poser question sur le plan légal, elles sont avant tout conçues pour fonctionner avec de vraies cartouches, alors que le MISTer nécessitera forcément de dumper soi-même ses ROMs pour ne pas les télécharger. Et là où notre comparaison s’arrête, c’est qu’il ne dispose pas forcément d’un boîtier comme un PC ; comme c’est une initiative open source, il faut acheter les éléments soi-même (quoiqu’une seule extension soit vraiment nécessaire au départ en plus de la carte DE10-Nano), puis récupérer la documentation et les fichiers sur le GitHub. Mais il est évident que tout le monde n’aura pas le budget, le talent ou tout simplement l’envie de se fabriquer son MISTer…

Je vous ai mis ci-dessus des exemples de jolis boîtiers, fabriqués par des artisans ou imprimés en 3D, mais j’ai vu des photos de créations qui mériteraient de figurer sur un site qui pourrait s’appeler MISTer Jacky Touch. Au final, le MISTer et les consoles d’Analogue constituent plutôt des propositions complémentaires s’adressant à des publics différents mais se recoupant, là encore comme le PC et les consoles. Par ailleurs, même si c’est à prendre avec des pincettes vu la rivalité entre les deux camps, Kevtris estime que MISTer n’est pas tout à fait aussi open source que le prétendent ses concepteurs, Alexey « Sorgelig » Melnikov en tête, lui-même ayant un caractère bien trempé. Il refuse catégoriquement que le MISTer soit directement connecté à des lecteurs de cartouches ou autres, ce qui le rendrait pourtant respectueux du droit et, si les cœurs sont en effet open source et peuvent être soumis par n’importe qui, c’est dans les faits lui qui a la décision finale de leur ajout au GitHub. Par ailleurs, l’OS du MISTer n’est lui pas open source et il n’est pas possible de le modifier ou l’adapter à d’autres cartes mères ; c’est officiellement pour éviter des forks du projet, ce qui est un peu ironique dans la mesure où MISTer est précisément un fork de MIST, qui reposait sur un FPGA moins performant et était initialement destiné à l’Atari ST.

Ce n’est donc pas demain que tout ce petit monde va se rabibocher, mais il faut en tout cas espérer que, lorsque certaines machines seront vraiment inutilisables et qu’il n’y aura plus d’autre moyen de les remplacer, on puisse trouver un terrain d’entente au nom de la préservation. Vous pouvez compter sur nous pour leur rappeler régulièrement d’ouvrir leurs cœurs, FPGA ou pas…

Lien Permanent pour cet article : https://mag.mo5.com/a-la-une/201927/edito-le-fpga-est-il-lavenir-du-retrogaming/