86Box, la perle de l'émulation vintage
86Box, la perle de l'émulation vintage
"On n'a malheureusement pas toujours les moyens de ses ambitions et de ses envies" disait un philosophe bien connu de la fin du XXème siècle et qui sévit toujours en ce début de XXIème siècle (keyser je crois qu'il s'appelle ).
Afin de pallier à ce douloureux constat et pouvoir profiter quand même dans des conditions quasi réelles du vieux matériel qui fait notre passion, il existe une véritable perle de programme dans les émulateurs, 86Box.
L'idée derrière, c'est de proposer un émulateur qui permet de créer et de faire tourner des machines virtuelles, comme le ferait un VMWare ou un VirtualBox, mais en permettant de choisir du hardware bien spécifique des belles années des "pionniers". Ça permet de choisir par exemple un 8086 jusqu'à un CPU socket 370, en choisissant tel modèle de carte mère ayant réellement existé, ainsi que la carte graphique, la carte son, la carte contrôleur si nécessaire, etc... Je ne suis absolument pas codeur, donc je n'ai aucune idée de la façon dont ils ont programmé ça, mais ils utilisent des dumps des ROM du matériel qu'ils cherchent à émuler, permettant ainsi de reproduire le comportement exact de ce que l'on a choisi. Et la liste est vraiment longue et dingue : vous pouvez très bien émuler un SLI de Voodoo 2, et ça fonctionne comme un vrai ! Liste trop longue cela dit pour l'énumérer ici, donc je vous laisse le soin de la découvrir par vous-même si vous tentiez l'aventure.
Il est possible de passer par une installation automatisée via un fichier setup exécutable , mais celle-ci éparpille par défaut des répertoires un peu partout sur votre ordinateur, dans le répertoire documents de l'utilisateur, bref c'est assez brouillon. Perso, je préfère tout centraliser à un seul endroit, donc je me crée un répertoire quelque part, je récupère tout au format zip ou 7zip, et je décompresse tout dedans. Là, l'installation est très simple : on se rend sur le site officiel dans la section téléchargement (lien en cliquant sur le logo en haut de la page), et on prend la dernière build sur le GitHub (version b4311 à l'heure d'écrire ces lignes). On décompresse dans un répertoire, et c'est tout.
Je vous conseille cependant par facilité d'aussi aller sur la page de WinBox for 86Box et de l'installer également (version 1.1.0.364 à l'heure d'écrire ces lignes). Il s'agit d''un frontend très efficace qui offre une interface de gestion claire et pratique. On prend l'archive 7zip et on la décompresse au même endroit que précédemment.
On se retrouve donc avec un répertoire qui devrait avoir la structure suivante :
On lance 86Box.exe, et on obtiendra le message d'erreur suivant, ce qui est tout à fait normal :
Il faut cliquer sur le lien download et aller télécharger l'archive des roms du matériel à émuler (version 3.11 à l'heure d'écrire ces lignes) :
On décompresse le fichier dans le répertoire du début
et on renomme en roms
Dernière chose concernant la mise en place, je vous conseille de créer également un répertoire Virtual Machines dont nous aurons besoin après pour y stocker nos machines virtuelles :
On peut maintenant lancer WinBox.exe et on obtiendra le message suivant :
On clique sur No et on va dans Tools -> Program Settings (ou on clique simplement sur l'icône Preferences dans l'interface)
Sur le 1er onglet Virtual Machines, on va sélectionner le répertoire que l'on a créé précédemment Virtual Machines
Sur l'onglet suivant General, on va pointer vers l'endroit où se trouve le fichier 86Box.exe, donc normalement à la racine de notre répertoire
On clique sur OK, et je vous conseille là de refermer le programme et de le réouvrir. On aura directement le message suivant :
Cliquez simplement sur Yes et laissez-le faire sa mise à jour. La partie mise en place est maintenant enfin terminée, et on peut passer au plat de résistance, la création d'une machine virtuelle
On clique bien évidemment sur le bouton New Machine et on suit le wizard, en ayant mis le nom de machine que l'on veut dans le champ Name :
Là, soit vous choisissez un template prédéfini, soit vous cliquez sur Create a template-free machine (advanced) pour définir vous-même tous les paramètres de votre machine (méthode que je préfère personnellement) :
Vous faites Next jusqu'à la fin en gardant bien la case Show more Settings after creation cochée
Et finalement, le coeur de votre machine virtuelle s'ouvrira :
Je vous laisse le soin de parcourir toutes les options et de découvrir tout ce que vous allez pouvoir émuler, c'est très/trop vaste pour que je détaille tout ici.
Une fois que vous aurez paramétré votre ordinateur selon vos désirs, il apparaîtra dans la liste et il suffira de double-cliquer dessus pour le lancer
Ici le Pentium 233 MMX de ma liste qui démarre
et qui fait tourner Doom 2 sans le moindre problème
Je ne vais pas faire ici un cours de MS-DOS ou d'un autre OS, vous devriez normalement savoir tous comment procéder pour cette partie. 86Box reconnait les disquettes au format .IMA qu'il est possible de monter via le menu Media de la machine virtuelle, ainsi que les fichiers ISO au format .ISO ou .CUE, toujours depuis le même menu. Et vu que ça se comporte comme un ordinateur vierge, à vous les joies des FDISK, FORMAT, etc... comme au bon vieux temps Et vu le matériel que vous allez émuler qui a donc réellement existé, si vous installez par exemple un Windows 9x, il faudra lui passer les drivers de votre matériel, comme sur un vrai. Idem pour la configuration initiale, le BIOS des cartes mère émulées est accessible via la touche traditionnelle, DEL/SUPPR bien souvent à cette époque. Attention toutefois de bien définir un type de lecteur de disquettes, ainsi qu'un éventuel lecteur optique dans les paramètres de la machine virtuelle. Sans cela, ça ne fonctionnera évidemment jamais. Il faut vraiment penser comme si vous étiez en train de construire une machine de toutes pièces, en y rajoutant chaque composant un à un. Donc pensez aussi à une carte contrôleur pour le disque dur et le lecteur de disquettes sur les anciennes cartes mère qui n'en disposaient pas. Bin oui les jeunes, vous pensiez que c'était simple à l'époque ? Que nenni ! La carte mère, on y mettait juste le CPU et la RAM à partir de certains (oui oui, la mémoire vive au début était sur une carte séparée à part entière). Seule chose que cet émulateur devrait vous épargner, c'est les conflits IRQ, DMA, etc... Encore que, si vous vous trompez dans les paramètres de ce que vous ajouterez dans la machine, ça peut aussi arriver. Comme un vrai je vous dis !
Quelques petites choses à savoir :
- le seul défaut selon moi, c'est que les paramètres du frontend Winbox for 86Box sont sauvés directement dans la base de registre Windows, sous HKEY_CURRENT_USER\SOFTWARE\Laci bá' plutôt que dans un fichier INI qui serait dans le répertoire, rendant la portabilité de l'ensemble caduque. Peut-être est-il possible de passer un paramètre ou qu'il y a une option quelque part pour que ça fonctionne de la sorte, mais j'avoue que je n'ai jamais cherché en profondeur
- un des trucs absolument fabuleux de cet émulateur, c'est la panoplie de possibilités au niveau du son. Déjà, il y a pléthore de cartes son disponibles, en ISA comme en PCI. Puis surtout, il est possible de profiter comme sur d'autres émulateurs de différentes solutions MIDI comme si on disposait d'un tel module. On peut par exemple émuler un Roland MT-32 en configurant comme il faut, ou même profiter de FluidSynth qui est incorporé au soft, et charger des banques de sons au format .SF2 afin de bénéficier de musiques d'un niveau sonore exceptionnel. Pour ceux qui ne connaitraient pas le MT-32, c'est un appareil aussi mythique que la 1ère 3dfx qui a complètement révolutionné le monde du son sur ordinateurs dans les années 80, et de loin mon appareil préféré de tous les temps. Présentation plus tard dans la section dédiée à Roland. Il y a juste un GROS problème de légalité quant à la distribution des fichiers ROM d'un MT-32, voire même peut-être de certains .SF2, donc je vous laisse vous débrouiller pour les trouver par vous-même. On me glisse cependant à l'oreille qu'un certain Google de son prénom serait très amical sur le coup... Et si d'aventure vous possédiez un appareil de ce type, il est tout à fait possible de l'utiliser sur un ordinateur moderne et le faire reconnaitre par 86Box. Mais ça demande un peu de connaissance et du matériel pour aller avec. Aussi pour un futur tuto
Bon amusement avec cette merveille et n'hésitez pas si vous avez des questions
PS: un petit oubli, les touches/combinaison de touches pour récupérer la main si vous avez capturé votre souris par exemple
- CTRL + F12 = CTRL+ALT+DEL
- libérer la souris = click sur la molette si vous en possédez une ou F8 + F12 simultanément
- J'ai vu des photos ce matin...
- J'étais jeune, je crevais de faim !
- Joey, as-tu déjà visité une prison turque ?
- Joey, tu aimes les films de gladiateurs ?
- Joey, es-tu déjà rentré dans une salle de bain quand un monsieur tout nu s'y trouvait ?
- J'étais jeune, je crevais de faim !
- Joey, as-tu déjà visité une prison turque ?
- Joey, tu aimes les films de gladiateurs ?
- Joey, es-tu déjà rentré dans une salle de bain quand un monsieur tout nu s'y trouvait ?