Introduction
DosBox est un projet OpenSource multi plates-formes permettant d'émuler juste ce qu'il faut pour pouvoir
jouer à ces bons vieux jeux qui tournaient sous MSDos à l'époque du 286 et du 386. La clé de sa portabilité
est l'utilisation de la librairie multimédia maintenant bien connue "SDL", il a d'ailleurs déjà été
portée sur beaucoup de plates-formes dont Windows, BeOS, MacOS, Linux, BSD, etc. Nous devons le portage
sur notre plate-forme de la version 0.58 de cet émulateur à Léo (alias Nogfx). Il est téléchargeable
librement et gratuitement et ses sources sont disponibles. La dernière version officielle du projet est
la 0.60.
Présentation
Vous pourrez télécharger le binaire 68K, MorphOS ainsi que les sources sur le site de Léo à cette adresse :
nogfx.free.fr/morphos/. Le site officiel du
projet se trouve ici : dosbox.sourceforge.net/.
DOSBox ne peut pas être assimilé à un émulateur de PC dans le sens où l'on ne peut, par exemple, pas
installer un MSDos dessus. Il est en fait conçu comme un unique bloc intégrant un émulateur de 386, les
fonctions du Bios et un shell compatible MSDos. Ainsi, lorsque vous lancez DOSBox, vous vous retrouvez
directement dans un simili DOS sans avoir à booter quoi que ce soit. Le but avoué de DOSBox étant de faire
tourner les jeux, il intègre toutes les fonctions dont avaient besoin les jeux de l'époque.
- Emulation des cartes video CGA, EGA, VGA
- Emulation SoundBlaster (la plus importante) parmis d'autres cartes son
- Emulation joysticks
- Emulation de la mémoire EMS et XMS
La seule grosse ombre au tableau est la non prise en charge du mode "protégé" du 386, ce qui
mettra pour l'instant directement à l'écart tous les jeux nécessitant ce mode pour fonctionner.
Exit donc les jeux contenant un fichier "Dos4GW" mais d'autres aussi comme ceux utilisant le
moteur de Doom par exemple. Un début de gestion du mode "protégé" a cependant fait son apparition
dans la version 0.60, mais celle-ci n'est pour l'instant pas à notre disposition sur AmigaOS.
Dans la pratique
Avant toute chose, sachez que la version MorphOS n'est pour l'instant pas réellement utilisable. En effet, il est impossible de "monter" un répertoire, et le mapping des touches clavier est mauvais. J'ai donc, pour les besoin de l'article, utilisé DosBox version 68K sur mon Pegasos sous Morphos.
DOSBox peut être lancé en ligne de commande ou depuis le Workbench. Lorsqu'il est lancé sans option, on se
retrouve sur un disque virtuel "Z:" contenant quelques commandes que l'on peut apercevoir en faisant un
"dir". Les commandes MSDos principales sont intégrées dans le shell (Dir, Cd, etc.), mais le but n'est de
toute façon pas le support de scripts shell complexes. Cet émulateur n'utilise pas des images-disques comme
les autres, mais utilise directement les répertoires du système hôte en tant que disques. Pour monter un
disque "C:" ayant pour contenu le répertoire "pinballdreams", il suffit de taper la commande "mount c pinballdreams".
Il est également possible de monter un disque dès le lancement de DOSBox en utilisant une ligne de commande de la
forme "dosbox [repertoire]". Un disque virtuel C est alors à notre disposition et l'on peut s'y rendre en
tapant "C:" suivi de la touche [Entrée]. En tapant "dir", on va pouvoir lister les fichiers de ce répertoire,
et un simple "pinball" lancera le jeu sans que l'on ait à se soucier du contenu de notre autoexec.bat et de
notre config.sys afin d'avoir de la mémoire paginée ou encore de gagner quelques octets de mémoire dans la
zone des 640 Ko contrairement à la bonne époque ;).
Pinball Dreams sous DosBox (NB : il s'agit bien ici d'une capture d'écran sous MorphOS,
même si la skin utilisée peut prêter à confusion ;).
Un fichier de configuration très complet permet de jouer sur beaucoup de paramètres de l'émulation comme le
mode d'affichage au démarrage, le frameskipping, la vitesse de l'émulation CPU, l'émulation de la carte son
ou la configuration de la mémoire. Il est d'ailleurs normalement possible de créer plusieurs fichiers de
configuration et de choisir celui à utiliser lors de l'exécution de DOSBox en lançant ce dernier avec une
ligne de commande de la forme "dosbox -conf [fichierdeconfiguration]". Malheureusement, le
portage Amiga ne gérant pas les paramètres de la ligne de commande, vous devrez recopier le fichier
"dosbox_soundenabled.conf" dans "dosbox.conf" (utilisé par défaut) si vous voulez pouvoir profiter
du son qui, par défaut, est désactivé. Le mode plein écran n'est pas vraiment fonctionnel, si ce n'est
pour le mode texte, quoiqu'il est impossible d'en revenir proprement. On peut noter également qu'il
est impossible de mettre une fenêtre en avant plan par dessus DOSBox, ce dernier semblant écrire
directement dans la mémoire vidéo. Il est également vivement déconseillé de jouer avec sa fenêtre au
delà des limites de l'écran sous peine de trasher l'affichage vidéo de l'OS ;).
Voici un tableau récapitulatif des jeux que j'ai testés :
Jeu
|
Résultat
|
Doom
|
KO (mode protégé)
|
Lion King
|
KO (mode protégé)
|
FlashBack
|
OK
|
Hexen
|
KO (mode protégé)
|
Doom2
|
KO (mode protégé)
|
Prince of Persia
|
OK
|
Rise of the Triad
|
KO (mode protégé)
|
Pinball Dreams
|
OK
|
Red Baron
|
OK
|
Vroom
|
OK
|
Pour résumer, on peut dire que les jeux qui ont de bonnes chances de fonctionner avec cette version 0.58
sont les jeux 2D d'avant la génération des Doom et autres jeux DOS à moteur 3D logiciel. Une liste de
plus de 1400 jeux avec leur compatibilité est disponible sur le site officiel à cette adresse :
http://dosbox.sourceforge.net/comp_list.php?letter=a.
Flashback
Red Baron
En ce qui concerne la vitesse d'émulation, un Pegasos G3/600 permet par exemple de jouer à Prince of
Persia presque à vitesse réelle mais il faut tout de même garder à l'esprit que la version de DOSBox
utilisée ici est la 68K. D'après les auteurs, le principal responsable de la relative lenteur de DOSBox
est l'émulation VGA. Pour cette raison, le fait d'appliquer un "frameskipping" améliore grandement
les choses au détriment évidemment du nombre d'images par seconde.
Conclusion
Le projet DOSBox semble très prometteur car il est très actif. En effet, comme on peut le voir sur le site officiel,
la version 0.60 permet dors et déjà de faire tourner des jeux 3D dont Doom et Duke Nukem 3D et même d'autres
beaucoup plus évolués. A notre charge d'assurer les portages réguliers pour pouvoir bénéficier en temps
et en heure de la dernière version sur notre plate-forme préférée.
|
|