Emulateurs de jeux
🕹️ Mais où j'ai mis mon joystick !?
Vous êtes nostalgique d'antiques plateformes ou architectures que vous voudriez re-découvrir.De plus vos vieux CD de Command and conquer prennent la poussière.
Nous allons voir divers émulateurs permettant de les réutiliser,
comme un PC sous DOS, machines d'arcade, «ordinosaures» etc.
Pré-requis
Les supports de ces jeux sont souvent des images ISO ou des ROMS. Créez un groupe d'utilisateurs autorisés à jouer, par exemple joueurs
.
pw -group add joueurs -m david, patrick, lecid
Créez ensuite un répertoire dédié aux jeux:
mkdir -p /usr/local/share/games mkdir -p /usr/local/share/games/mameroms mkdir -p /usr/local/share/games/pciso chown -R :joueurs /usr/local/share/games
où vous copierez les originaux des jeux.
DosBox
DosBox va vous permettre de faire tourner un vieux MS-DOS pour IBM-PC dans votre FreeBSD. Installez le port emulators/dosbox et lancez:
dosbox keyb fr
La dernière commande vos permettra d'utiliser une disposition clavier AZERTY.
Configuration
Montez le système:
mount C /usr/local/share/games/PC
et utilisez les comme si vous étiez désormais sous DOS.
Montez un CD virtuel à partir de son image ISO:
imgmount D c:/pciso/jeu.iso -t iso
Préparez un fichier de configuration:
david:~>dosbox -resetconf david:~>dosbox -printconf /home/david/.dosbox/dosbox-0.74-3.conf
La dernière ligne vous indique le chemin du fichier de configuration par défaut. Modifiez le pour monter automatiquement votre système DOS.
--- .dosbox/dosbox-0.74-3.conf.old 2021-04-28 11:12:43.514245000 +0200 +++ .dosbox/dosbox-0.74-3.conf 2021-04-28 11:13:49.706252000 +0200 @@ -247,4 +247,5 @@ # Lines in this section will be run at startup. # You can put your MOUNT lines here. - +mount C /usr/local/share/games/PC +keyb FR
Exemple
Vous voulez jouer à Constructor ou à Red alert dont vous avez obtenu le fichier ISO.
Copiez les dans un repertoire dédié, au sein du système DOS, i.e. /usr/local/share/games/PC/iso/
.
Vous pouvez créer autant de fichiers de configuration que vous avez de jeux:
--- .dosbox/dosbox-0.74-3.conf 2021-04-28 11:13:49.706252000 +0200 +++ constructor.rc 2021-04-28 11:20:18.510026000 +0200 @@ -249,3 +249,8 @@ mount C /usr/local/share/games/PC keyb FR +imgmount D c:/ISO/CONSTR~1.ISO -t iso +c: +cd \ACCLAIM\CN +game +
Pour les utiliser ensuite:
dosbox -conf constructor.rc
Mame et Mess
Ce sont deux puissants émulateurs, l'un pour les jeux d'arcade, l'autre pour les consoles et autres ordinosaures. Leur interface est similaire, ces programmes se lancent en lignes de commandes mais disposent de diverses interfaces graphiques. Sous FreeBSD, privilégiez les ports:
Ceux sont des versions dites SDL du projet, les versions natives ne sont plus prises en charge.
Créez pour chacun un fichier de configuration:
mame64 -createconfig mess64 -createconfig
Vous obtiendrez deux fichiers mame.ini
et mess.ini
Pour de plus amples informations:
mame64 -showusage mess64 -showusage
ou consultez leur site.
M.E.S.S.
Les Bios
Avant d'émuler une machine, il vous faut obtenir son bios. Diverses ressources sur Internet vous permettront de les obtenir. Certains sont intégrés de base, comme la Megadrive:
mess64 megadriv -joy -cart /usr/local/games/Sonic.bin
Par contre pour l'Amstrad, créez le répertoire idoine dans notre arborescence dédiée:
mkdir - p /usr/local/share/games/mess/
et copiez y les bios:
- cpc464 ;
- cpc6128 ;
- cpc6128f, version au clavier français.
N'oubliez pas d'indiquer ce répertoire dans le champ rompath
de la configuration.
Enfin, un jeu sur disquette:
$ ls /usr/local/share/games/cpc/*.dsk sorcerpf.dsk cauldr2e.dsk cauldr2s.dsk
Lancez le tout:
mess64 cpc6128 -flop1 /usr/local/share/games/cpc/sorcerpf.dsk
Les claviers
Ces machines posent un problème, la disposition clavier est assez particulière, celui de l'Amstrad français vous donnerait à peu près n'importe quoi. En fait, le BIOS français utilise un patch pour clavier US. Donc, pour contourner le problème, utilisez une disposition US avant de lancer le BIOS français:
setxkbmap -model pc101 -layout us mess64 cpc6128f -flop1 /usr/local/share/game/cpc/sorcerpf.dsk
Automatisez cette fonction, à l'aide de la touche «Windows», par exemple:
setxkbmap -model pc101 -layout fr,us -variant latin9 -option grp:lwin_toggle
M.A.M.E.
Multiple Arcade Machine Emulator.
Placez vos ROMs, Artworks, Marquees et autres samples dans un répertoire commun à tous les joueurs, et précisez le dans le fichier de configuration:
--- mame.ini 2021-04-28 11:45:27.857182000 +0200 +++ mame.ini.new 2021-04-28 11:44:08.437219000 +0200 @@ -7,19 +7,19 @@ # # CORE SEARCH PATH OPTIONS # -homepath . -rompath roms -hashpath hash -samplepath samples -artpath artwork -ctrlrpath ctrlr +homepath /usr/local/games/arcade/ +rompath /usr/local/games/arcade/roms +hashpath /usr/local/games/arcade/hash +samplepath /usr/local/games/arcade/samples +artpath /usr/local/games/arcade/artwork +ctrlrpath /usr/local/games/arcade/ctrlr inipath $HOME/.mame;.;ini fontpath . -cheatpath cheat -crosshairpath crosshair -pluginspath plugins -languagepath language -swpath software +cheatpath /usr/local/games/arcade/cheat +crosshairpath /usr/local/games/arcade/crosshair +pluginspath /usr/local/games/arcade/plugins +languagepath /usr/local/games/arcade/language +swpath /usr/local/games/arcade/software # # CORE OUTPUT DIRECTORY OPTIONS
Les Roms
Ce sont des fichiers Zip à ne surtout pas décompresser. Vous trouverez ces roms sur de nombreux sites.
Jouer
Lancer simplement:
- mame64 LeNomDelArom
- mame64 bombjack
Tricher
C'est le seul moyen de finir Ghost and goblins !
Télécharger le fichier des tricheurs, décompressez le et ajoutez les fichiers obtenus dans le répertoire de l'émulateur.
Il s'agit d'une fichier zip
.
La manette de jeux 🎮️
M.A.M.E. et M.E.S.S. utilisant les API SDL, il n'y a normalement rien à faire au niveau du système, la manette est détectée automatiquement, comme périphérique USB, sur uhid(4). Autorisez la manette dans le fichier d'initialisation:
# # CORE INPUT OPTIONS # joystick 1
Précisez ensuite les fonctions dédiées pour chaque type d'entrée de commande:
# # CORE INPUT AUTOMATIC ENABLE OPTIONS # paddle_device joystick adstick_device joystick pedal_device joystick dial_device joystick trackball_device mouse lightgun_device mouse positional_device joystick mouse_device mouse
Au cas où l'émulateur refuserait d'associer le joystick au périphérique du jeu, forcez la:
mame64 maRom -joy