• Rétrogaming

    MISTer

    Matériel : MiSTer
    (Article écrit par Erwan Jestin – avril 2018)


    Introduction

    En 2013, le MiST arriva en proposant une réimplémentation de l’Atari ST en FPGA, puis de nombreux coeurs logiciels arrivèrent sur cette machine reprogrammable, dont l’Amiga.

    Quatre ans plus tard, alors que le MiST n’évoluait presque plus et que le développement sur celui-ci s’essoufflait, le projet MiSTer débarqua sous la houlette du développeur russe Sorgelig. Le MiSTer propose un portage du projet MiST sur un
    FPGA vraiment plus puissant, avec de nouveaux coeurs ainsi que pas mal
    d’améliorations que nous allons voir en détail.

    La carte

    Le projet MiSTer est basé sur une carte fabriquée par Terrasic : la DE10-Nano.

    L’avantage d’avoir choisi une carte déjà existante produit par Terrasic, c’est que celle-ci est disponible en grosse quantité et donc trouvable partout facilement. Cela permet aussi d’avoir une carte performante à un prix vraiment très bas (environ 110 euros).

    Le seul inconvénient, c’est d’être dépendant de Terrassic en espérant que la vente de cette carte ne s’arrête pas trop rapidement, mais si cela devait arriver, dans tous les cas, le projet MiSTer pourrait être facilement porté sur une autre carte (ouf).

    Au niveau du FPGA, il s’agit d’un Altera Cyclone V SE disposant de 110 000 LE (portes logiques). Pour information, le MiST possède un Cyclone 3 avec 24 624 LE et la Vampire V4, qui est aussi sous Cyclone V, en possède 77 000. Donc avec 110 000 LE, on peut dire qu’il y a vraiment de la place. Mais ce n’est pas tout car cette version spéciale du Cyclone V offre, en plus, un processeur ARM Cortex A9 double coeur à 800 MHz, ce qui permet d’avoir un noyau Linux pour gérer très facilement de nombreux périphériques. Et le plus beau dans cette histoire, c’est que le FPGA et l’ARM communiquent ensemble à toute vitesse (car ils sont logés dans la même puce).

    Un autre grand changement du MiSTer sur le MIST c’est que celui-ci possède une sortie HDMI qui permet d’afficher tous les coeurs de manière parfaite en résolution 1080p.

    En ce qui concerne la mémoire, la carte possède 1 Go de mémoire DDR3. Mais pour pouvoir utiliser certains coeurs, il faut rajouter un module de SDRAM sur le GPIO (voir le tableau plus bas).

    Les extensions

    Il existe à ce jour différents modules d’extension plus ou moins indispensables suivant l’utilisation que vous voulez faire du MiSTer.

    Le module SDRAM

    Ce module qui se branche sur le port GPIO 0, permet de rajouter 256 Mo de mémoire SDRAM à 166 MHz. Vous trouverez plus bas un tableau complet indiquant quels coeurs ont besoin d’un module SDRAM (donc à vous de voir si vous en avez besoin). Quitte à en prendre un, je conseille vivement de prendre la version XS (il existe plusieurs versions) car elle est plus performante et rentrera sans aucun souci dans tous les boîtiers.

    Le module RTC

    Le MiSTer récupère automatiquement la date et l’heure sur Internet. Ce module qui se branche sur le port LTC vous permet de sauvegarder ces informations et donc d’avoir la date sur certains coeurs (MSX, Amiga et PC) même sans connexion Internet (à vous de voir si cela est utile pour vous).

    Le module I/O Board

    Cette carte se branche sur le port GPIO 1 et est composée de plusieurs choses intéressantes :

    • Une sortie VGA. Le MiSTer offre une image vraiment sublime en HDMI, mais cette sortie VGA (4/3) permet de brancher le MiSTer sur un vieux moniteur CRT, sur une borne d’arcade (sortie en 15 et 31 kHz) ou même sur une télé CRT en la convertissant en Péritel, ceci permettant donc de retrouver encore plus le plaisir de nos vieilles machines. A noter que grâce à un petit interrupteur, il y a deux modes de gestion du VGA pour être 100% compatible (même avec les très vieux moniteurs).

    • Un ventilateur alimenté en 5 V. Le DE10-nano à tendance à chauffer méchamment sur les coeurs gourmands (PC 486 par exemple), donc avec un bon ventilateur, il n’y a aucun souci. Et hop, c’est parti pour de longues nuits retro. ^^
    • Trois boutons de contrôle (non indispensable) mais qui offrent un plus au niveau de la simplicité d’utilisation (un bouton de réinitialisation de la machine, un bouton de réinitialisation du coeur et un bouton pour accéder à la configuration)
    • Trois LED qui permettent d’avoir un retour visuel de ce qui se passe, là aussi ce n’est pas indispensable mais c’est très pratique
    • Un lecteur de carte microSD. Cela permet d’avoir une seconde carte formatée en FAT16 . Elle est indispensable pour certains coeurs (voir le tableau)
    • Deux sorties son : une en Jack et l’autre en sortie optique. Très pratique si vous ne voulez pas récupérer le son du HDMI et bien sûr indispensable si vous utilisez la sortie VGA.

    Après, si vous avez seulement besoin du ventilateur, des boutons et de la carte SD, il est tout à fait possible de les brancher directement sur le GPIO et de se faire un boîtier pour tout fixer comme sur la photo.

    Le module PI-Top

    Il existe aussi des modules d’extension pour rendre le MiSTer totalement compatible avec le PI-Top V1 (mais je n’ai pas encore testé).

    Le projet MiSTer permet de retrouver avec bonheur de nombreuses machines, 74 coeurs sont disponibles à ce jour dont une cinquantaine de PCB d’arcade (Pacman, Galaga, Pengo, Xevious…), plusieurs consoles (NES, Mega Drive, PC Engine…) et de nombreux ordinateurs (C64, MSX, Amiga, ZX Spectrum…). Bref, il y a vraiment de quoi faire avec le MiSTer.

    Les machines gérées

    Voici un tableau récapitulatif des machines disponibles ainsi que les informations sur l’obligation d’avoir un module SDRAM ou un lecteur de carte SD en FAT16.

    Les machinesSDRAM obligatoire ?SD en FAT16 obligatoire ?
    50 PCB arcadesNonNon
    AmigaOuiNon
    PC 486 SXNonNon
    ApogeeNonNon
    Apple II+NonNon
    ArchieNonNon
    Atari 800OuiOui
    Atari 2600NonNon
    Atari 5200OuiOui
    BK0011MOuiNon
    ColecovisionNonNon
    Commodore 64OuiNon
    Commodore PETNonNon
    Game BoyOuiNon
    Mac PlusOuiNon
    Mega DriveNonNon
    Master SystemOuiNon
    MSXOuiOui
    NESOuiNon
    PC EngineNonNon
    SAM CoupéOuiNon
    Sharp X68000OuiOui
    Sinclair QLOuiOui
    Vector 06CNonNon
    ZX SpectrumNonNon

    Allez, on branche la bête

    Il est temps maintenant de tester cette machine. On prépare la carte SD grâce à un logiciel fourni, on copie dedans différents coeurs et ROM, on place la carte SD dans le MiSTer et on allume.

    Nous voilà sur le menu du MiSTer (simple mais efficace). On va par exemple lancer la NES et la ROM de Super Mario, et là…

    Oh mon Dieu ! Le rendu est vraiment magnifique, totalement hallucinant et bien sûr en 1080p (1920×1080). Je branche une manette pour tester et là, c’est direct l’hystérie totale… On se croirait vraiment sur une vraie NES en 1080p, rien à voir avec tous les autres émulateurs que j’ai pu tester. Le rendu est vraiment parfait et bien au-dessus du MiST.

    Et en plus, pour combler les goûts de chacun, il est possible sur chaque coeur de régler l’image à l’aide de différents traitements d’image et de choisir son ratio.


    Super Mario Bros sur NES en 4/3 avec le rendu CRT 25%

    Super Mario Bros sur NES en 16/9 avec le rendu CRT 25%

    Sonic The Hedgehog sur Mega Drive

    The Goonies sur MSX

    Le Commodore 64

    Bonk’s Big Adventure sur PC Engine

    Alex Kidd In Miracle World sur Master System

    Tout tourne vraiment parfaitement avec un rendu en 1080p totalement hallucinant. Je suis sous le charme total de ce MiSTer qui me permet de retrouver toutes mes machines préférées avec une qualité bien supérieure à tout ce que j’ai pu tester auparavant (Rasperry Pi et MiST compris). Après, bien sûr, j’ai conscience que cela ne sera jamais parfait à 100% et certains jeux ou ROM peuvent poser des problèmes, mais pour le moment tout ce que j’ai testé a fonctionné parfaitement.

    Et l’Amiga dans tout ça ?

    Eh bien oui, nous sommes quand même sur Obligement donc l’Amiga est la machine qui nous intéresse le plus, même si je suis sûr que le Commodore 64 vous a fait de l’oeil. ^^

    Hum, vaste sujet l’Amiga, par où commencer ? Tout d’abord, il faut savoir que l’Amiga sur le MiSTer est un dérivé du coeur présent sur le MiST qui était un dérivé du coeur du Minimig. Le MiSTer est capable de faire tourner toute la gamme des Amiga classiques sauf la CD32.

    Il est possible de jouer sur différents réglages pour avoir une configuration proche de ses envies :

    • Processeur : 68000, 68010 ou 68020 à 88 MHz (oui oui 88 MHz).
    • Vidéo : PAL ou NTSC.
    • Jeu de composants : OCS A500, OCS A1000, ECS ou AGA.
    • Mémoire Chip : 512 ko, 1 Mo, 1,5 Mo ou 2 Mo.
    • Mémoire Slow : 0 ko, 512 ko, 1 Mo ou 1,5 Mo.
    • Mémoire Fast : 0 Mo, 2 Mo, 4 Mo ou 24 Mo.

    Le MiSTer permet aussi la gestion des disquettes virtuelles ADF et des disques durs virtuels HDF, la gestion des manettes à six boutons, l’ajout de scanlines (lignes entrelacées noires), le réglage de la stéréo de la partie audio, la gestion des différents Kickstart, etc. Beaucoup de bonnes choses pour avoir une belle machine.

    Un petit tour sous SysInfo pour se rendre compte que nous avons actuellement au maximum, l’équivalent d’un Amiga 1200/030 à 40 MHz avec plein de mémoire, de quoi faire tourner sans soucis 99% des programmes et jeux sortis sur Amiga (en ADF ou sous WHDLoad).


    SysInfo/Amiga

    En ce qui concerne la résolution, le MiSTer gère le mode HighGfx (comme les Indivision) et permet donc d’avoir le Workbench en 1024×768 et bien sûr le tout parfaitement redimensionné en 1080p, du vrai bonheur.


    Le Workbench

    Il est temps maintenant de lancer quelques jeux (sous WHDLoad) pour mieux se rendre compte du rendu.


    Agony (Amiga 500 – ECS)

    Flink (Amiga 1200 – AGA)

    Super Stardust (Amiga 1200 – AGA)

    Là aussi, rien à redire. Cela tourne vraiment parfaitement avec un rendu vraiment magnifique. A ce jour, le MiSTer est clairement le meilleur Amiga FPGA autonome de disponible et il a totalement remplacé mes Amiga sur mon bureau.

    Conclusion

    Pour moi, le seul gros défaut du DE10-nano est son refroidissement car cela est toujours embêtant d’avoir le bruit d’un ventilateur en continu, même si c’est un tout petit Noctua.

    Après, tout le reste est vraiment très bon, la DE10-nano est une très bonne carte et le projet MiSTer fait véritablement des merveilles dessus. De nombreuses machines sont disponibles et tournent parfaitement.

    Il faut vraiment tester par soi-même pour se rendre compte de la beauté du MiSTer qui offre un rendu bien au-dessus du Raspberry Pi et de son émulation processeur par une approche assurément plus proche de la machine originale.

    Le MiSTer que je possède depuis huit mois est clairement devenu ma machine principale, je l’utilise tous les jours avec les coeurs suivants : Amiga, MSX, C64, PC Engine, NES et Mega Drive (et de temps en temps avec les autres coeurs).

    En huit mois, le projet a totalement explosé en proposant un rendu bien supérieur au MiST, plein d’options en plus et bien sûr des nouveaux coeurs comme le PC 486 et dernièrement la gestion totale de Linux en ARM.

    Après, comme tout projet de passionnés, c’est difficile de savoir combien de temps il va continuer et comment il évoluera. Mais je souhaite une longue vie à ce projet qui comble actuellement tous mes désirs en matière de rétro-informatique.