Assemblage d’un Amiga 600 FPGA

1991, j’avais 10 ans. J’allais ranger ma SEGA Master System dans son carton car pour Noël je recevais le cadeau qui m’a certainement le plus marqué de toute mon enfance, et peut-être de toute ma vie de geek : L’Amiga ! Cette machine incroyable pour son époque ne m’a pas quittée jusqu’en 1996 (2 ans après la mort de Commodore). En 5 ans, l’Amiga m’a ébloui par la richesse de sa ludothèque, et m’a fait découvrir le monde de l’informatique : mes premiers logiciels de création musicale, d’infographie, et même d’animation !

Le PC que j’ai découvert ensuite, m’a aussi procuré beaucoup de fun. Mais malgré sa toute puissance, les jeux qu’il avait en commun avec l’Amiga à la fin des années 80 et au début des années 90 n’y étaient parfois pas aussi bons.  Pour me rappeler aux bons souvenirs d’avant 1995, je suis régulièrement revenu à l’Amiga via l’excellent émulateur WinUAE.  Mais ça c’était avant que j’assemble un AMIGA FPGA !

Le FPGA, kézako ?

Le FPGA (field-programmable gate array) est un circuit logique programmable. On programme et exécute sur ces circuits FPGA ce qu’on appelle des « cores ».  Le core est en quelques sortes l’équivalent en programmation d’un circuit électronique physique, avec ses portes logiques / transistors.

Ceci signifie que la technologie FPGA permet notamment de reproduire des circuits et chipset complexes. MiSTer est un projet open source dont le but est de recréer différents ordinateurs classiques, de consoles de jeux vidéo et même des bornes d’arcade en utilisant un hardware moderne (FPGA). Il permet aux logiciels et aux jeux de fonctionner comme sur le matériel d’origine, en utilisant des périphériques (souris, clavier, joysticks et autres contrôleurs !). Meilleur est le développement du core, plus le comportement de la machine simulée est proche de la réalité. Certains core de ce qu’on dit (je ne les connait pas assez pour l’affirmer moi même), sont proches de la perfection.

Plus d’infos sur MiSTer : https://github.com/MiSTer-devel/Main_MiSTer/wiki

Du FPGA dans l’Amiga

Sur le forum AmigaLove, le membre MattSoft a posté un projet d’intégration de MiSter dans un boitier d’Amiga 600. Cette idée m’a immédiatement séduite. J’avais déjà fait la même chose à partir avec un Raspberry avant cela.

Cet article sera l’occasion pour moi de vous expliquer les différentes étapes de cet assemblage, en Français.

Equipements requis

  • Un boitier Commodore Amiga 600 vide, avec son clavier fonctionnel
  • Les pièces d’assemblage (impression 3D) conçues par MattSoft
  • Une carte de développement Terrasic DE-10 Nano
  • Une barrette de SDRAM pour DE-10 Nano (32Mo ou 64Mo recommandé, 128Mo si vous souhaitez pouvoir faire tourner tous les jeux NeoGeo)
  • Une carte interface USB pour clavier Amiga Tynemouth Software A600 keyboard interface (ou Keyrah)
  • Un module RTC (si vous voulez avoir une mémoire d’horloge)
  • Un module I/O Board (si vous souhaitez connecter votre MiSTer en RGB sur un écran cathodique) à défaut la plaque DE10_Center_Y_Axis_Both_IO  conçue par HugoCraft (impression 3D) et un ventilateur adapté
  • Un HUB micro USB zeroU4
  • Un câble micro USB -> Mini USB OTG
  • Une carte SD
  • Un lecteur de carte micro SD déporté (qui rendra la carte accessible par la fente du lecteur de disquette).
  • Une rallonge HDMI
  • Une entrée DC
  • Un bouton poussoir (accès au core menu)
  • Un switch ON/OFF
  • 3 résistances 200 à 450 Ω
  • Des vis M2

Assemblage

D’abord, il faudra assembler les pièces imprimées en 3D dans le boitier vide de l’AMIGA 600. Ces pièces sont ajustées au poil. J’ai du un forcer pour en placer certaines. Alors il faudra bien calibrer son imprimante 3D. Une fois que ce support est placé, il ne reste plus qu’à tout assembler dans le boitier. Et voilà le résultat. MattSoft a fait un superbe travail avec ces pièces 3D. Ca tient bien, et surtout l’agencement est très bien pensé. Par exemple, les ports USB du HUB sont accessibles par la trappe d’extension.

MiSTer FPGA dans un Amiga 600

J’avais déjà une carte Keyrah V2 d’un précédent projet à base de Raspberry. Cette carte assez volumineuse, se place normalement dans le boitier là où sont les ports COM. Si vous avez déjà une Keyrah V2, inutile d’acheter une carte Tynemouth. Il faudra simplement placer la Keyrah à un autre endroit dans le boitier. Je l’ai fixée avec un scotch épais double-face pour qu’elle ne bouge pas.

Une dernière petite info en passant : Il me reste seulement à connecter les LED du boitier de l’A600. Pour cela, voici quelques notes supplémentaires laissées par MattSoft sur le forum Amiga Love, où il présente son projet : Dessouder les LED du circuit de LED de l’Amiga et les inverser sur la carte de manière à pouvoir coupler la cathode des LED  avec le commun de la board IO (schéma de la Board IO 5.5 ici), placer une résistance 200 à 450 Ω entre le +5V et l’anode de chacune des 3 LED.  (Si vous faites ce montage, ne tentez cela que si vous êtes sur de vous. Ce sera trop bête de cramer votre IO Board pour 3 LED).

Une fois le tout monter, il ne vous reste plus qu’à préparer la carte micro USB avec le système, et les Cores que vous souhaitez utiliser. Tout est expliqué sur le Wiki MiSTer.

A vous de jouer !

Moi j’ai choisi d’y coupler une manette M30 de chez 8bitdo, et j’envisage de remplacer un des ports USB par un SNAC DB9, pour y brancher ma SpeedKing. Et vous, vous y jouerez comment ?

Laisser un commentaire