Contenu | Rechercher | Menus
Selon les tags présents sur cette page, celle-ci est ancienne et ne contient plus d'informations sur une des versions supportées d'Ubuntu.
Apportez votre aide…

Émulateur de bornes d'arcade : XMAME

Le contenu de cet article est très ancien. Les solutions les plus récentes d'émulation d'arcade utilisent désormais mame, et non xmame. Nous vous conseillons donc de consulter la page mame pour des informations à jour.

xmame

XMAME est un émulateur de borne d'arcade, celles qu'on trouve dans les cafés et les salles de jeu. Cet émulateur est capable de reproduire à la perfection le fonctionnement de très nombreuses machines ayant des hardwares bien différents.

XMAME est basé sur MAME (Multiple Arcade Machine Emulator).

MAME et son dérivé XMAME sont sous copyright bien que les sources soient disponibles.

Installation

Automatisée

  1. Activez les dépôts multiverse
  2. Installez les paquets xmame-x et xmame-sdl

Sur Hardy Heron 32 bits, Synaptic ne veut pas installer simultanément xmame-x et kxmame.

xmame-x propose une utilisation de OpenGL et de X ; xmame-sdl propose une utilisation des librairies SDL

Compilation

Récupérer les sources sur le site internet EmuWiki, décompressez les dans un répertoire et éditez le fichier makefile. Pour générer xmame.x11, il faut décommenter certaines lignes :

...
DISPLAY_METHOD = x11
...
X11_OPENGL = 1
...
JOY_SDL = 1   ##support du joystick par les lib. SDL

Les sources ne contenant par de fichier configure la compilation se fera de la façon suivante :

make
sudo make install

Configuration

Ajout des répertoires

Créer des répertoire :

sudo mkdir -p /usr/share/xmame/roms     =>rompath
sudo mkdir -p /usr/share/xmame/samples  =>samplepath
sudo mkdir -p /usr/share/xmame/artwork  =>artwork_directory

Et autoriser l'écriture :

sudo chmod 777 -R /usr/share/xmame/*

Fichier xmamerc

Le répertoire /etc/xmame/ contient un fichier xmamerc qu'il est indispensable de configurer en fonction des répertoires qui existent vraiment. Éditez le fichier /etc/xmame/xmamerc :

...
### Data files/directories ###
rompath                 /usr/share/xmame/roms         ##éditez cette ligne
samplepath              /usr/share/xmame/samples      ##celle ci
artwork_directory       /usr/share/xmame/artwork      ##et les suivantes
cheat_file              /usr/share/xmame/cheat.dat
hiscore_file            /usr/share/xmame/hiscore.dat
history_file            /usr/share/xmame/history.dat
mameinfo_file           /usr/share/xmame/mameinfo.dat

### System-wide Configuration directories ###
inipath                 /etc/xmame/ini
ctrlr_directory         /etc/xmame/ctrlr

...

De cette façon :

...
### Data files/directories ###
rompath                 /dossier/de/votre/choix         ##de cette façon
samplepath              /dossier/de/votre/choix         ##
artwork_directory       /dossier/de/votre/choix     
cheat_file              /dossier/de/votre/choix/cheat.dat
hiscore_file            /dossier/de/votre/choix/hiscore.dat
history_file            /dossier/de/votre/choix/history.dat
mameinfo_file           /dossier/de/votre/choix/mameinfo.dat

### System-wide Configuration directories ###
inipath                 /etc/xmame/ini
ctrlr_directory         /etc/xmame/ctrlr

...

Configurer le clavier

Durant le jeu, la touche [TAB] permet de rentrer dans l'interface de configuration, vous pouvez donc régler les actions associées à chaque touche, n'oubliez pas de configurer le insert coin (Mettez la monnaie ^_^).

Si certaines touches ne fonctionnent pas (Les touches par défaut pour "insert coin" et "start" par exemple), c'est parce que vous n'utilisez pas de clavier américain. Ceci est particulièrement embêtant si vous utilisez un joystick mappé sur les touches du clavier comme le Hotrod SE, car vous ne pouvez pas configurer d'autres touches. L'utilisation d'un frontend comme KXMame devrait vous faciliter la tâche pour régler votre problème, mais si vous préférez la version en ligne de commande, ajoutez ceci à votre fichier /etc/xmame/xmamerc :

### SDL keys remapping ###
sdlmapkey 0xb2,0x29
sdlmapkey 0x26,0x2
sdlmapkey 0xe9,0x3
sdlmapkey 0x22,0x4
sdlmapkey 0x27,0x5
sdlmapkey 0x28,0x6
sdlmapkey 0x2d,0x7
sdlmapkey 0xe8,0x8
sdlmapkey 0x5f,0x9
sdlmapkey 0xe7,0xa
sdlmapkey 0xe0,0xb
sdlmapkey 0x29,0xc
sdlmapkey 0x3d,0xd
sdlmapkey 0x41,0x10
sdlmapkey 0x5a,0x11
sdlmapkey 0x5e,0x1a
sdlmapkey 0x24,0x1b
sdlmapkey 0x51,0x1e
sdlmapkey 0x4d,0x27
sdlmapkey 0xf9,0x28
sdlmapkey 0x2a,0x29
sdlmapkey 0x57,0x2c
sdlmapkey 0x2c,0x32
sdlmapkey 0x3b,0x33
sdlmapkey 0x3a,0x34
sdlmapkey 0x21,0x35

Ces codes sont valables pour un clavier français uniquement.

Configurer le joystick

XMAME supporte les joysticks, à partir du moment où le noyau Linux les gère. Pour cela il faut installer les paquets xserver-xorg-input-joystick et libjsw2 :

sudo apt-get install xserver-xorg-input-joystick libjsw2

Vous pouvez aussi utiliser des utilitaires d'aperçu et de configuration de vos pads en installant les paquets joystick et jscalibrator :

sudo apt-get install joystick jscalibrator

Pour vérifier que le joystick est bien pris en charge par le noyau :

lsmod | grep joydev    => module noyau joystick
ls /dev/input/js*      => doit renvoyer une ligne par joystick /dev/imput/js0, 1 ...

Certaines options en ligne de commande permettent de tester le fonctionnement du / des joystick :

  • Indiquer le chemin vers le(s) périphérique(s) joystick :
xmame.x11 <rom> <option video> -jdev /dev/input/js
  • Indiquer le type de joystick : Ici 5 correspond à un support joystick SDL, à remplacer par 1 si le joystick doit être pris en charge en standard :
xmame.x11 <rom> <option video> -jdev /dev/input/js -jt 5

NOTE : Le paquet jscalibrator installe un utilitaire de calibration qui pourrait vous servir. Il est accessible par le menu Applications/Accessoires/Joystick Calibration

Vous pourrez assigner les commandes en utilisant la touche Tab une fois XMAME lancé

Testons l'installation de XMAME

xmame.x11 ou xmame.SDL

Supposons que je possède dans mon salon la borne "Street Fighter Alpha 2", qu'en plus j'ai réussi à trouver le fichier rom correspondant "sfa2.zip" et que la rom et les bios soient dans le répertoire rom, je peux alors tester XMAME.

Avec xmame.x11 :

xmame.x11 sfa2 -vidmod 2 -fullscreen -afs   ##vidmod2=openGL afs=autoframeskip

Avec xmame.SDL :

xmame.SDL sfa2 -ef 2 -ws 2 -hs 2 -fullscreen -afs  ##ef 2=effet diminuant les scanlines, ws et hs=augmenter par 2 la taille de la fenêtre

Consulter l'aide

Pour connaître toutes les options possibles de XMAME, il y a 2 possibilités :

  • Via Konqueror ( man:xmame ) ou bien via la console :
man xmame
  • Consulter le help :
xmame --help

BIOS et ROM

Là, ça se complique, il faut mettre les bios et les roms (Dont vous possédez l'original bien sûr), dans le répertoire roms.
Où trouver les bios pour XMAME ? Par exemple sur google (En tapant par exemple bios NeoGeo).
Où trouver les roms ? Vous disposez bien sur toujours de google (En tapant rom nom du jeu).
Vous trouverez également des roms légalement téléchargeables pour un usage non commercial sur ce site.

Attention, les roms ne doivent pas être décompressé ! Il faut tout simplement les mettre en .zip dans le dossier roms de XMAME

Les GUI / Interfaces graphiques

Les possibilitées sont nombreuses, GXMame fonctionne à condition de compiler la dernière version, KXMame fonctionne quant à lui avec SDLMAME (Disponible via Adept ou bien Synaptic).

GXMame

Installation

http://gxmame.sourceforge.net/

Après avoir téléchargé et dezippé les sources gxmame-0.35beta2.tar.gz, on ouvre une console dans le répertoire des sources et on tape :

sudo apt-get install build-essential libexpat1-dev zlib1g-dev libgtk2.0-dev
./configure
make
sudo make install        //ou bien:
sudo checkinstall        //si vous avez l'habitude de checkinstall

GXMame nécessite les paquets -dev suivant: GTK+ 2.4 (libwxgtk2.6-dev ?), zlib-dev, libexpat1-dev. GXMame sera installé et sera disponible dans le menu jeux ou dans une console via la commande gxmame.

Utilisation

Gxmame nécessite d'être configuré ; Il faut renseigner la liste des répertoires :

  • roms et bios : /usr/share/xmame/roms/
  • l'exécutable Xmame.x11 et/ou xmame.SDL : /usr/games
  • chemin vers catver (Provenant de l'archive catver.zip)
  • chemin vers d'autres fichiers (non indispensables) à télécharger préalablement via la documentation en ligne de gxmame.

Ensuite il faut reconstruire la liste des jeux, puis appuyer sur [F5] pour rafraîchir l'interface, la liste des jeux apparaît quant à elle dans "available".

Chaque jeu peut avoir sa propre configuration, et le résultat est vraiment à la hauteur.

Installation graphique facile

Autre solution (Tester sur Ubuntu 7.10 Gusty Gibbon) : Installer directement GXMame à partir du paquet suivant : http://sourceforge.net/projects/gxmame/files/gxmame/0.35beta2/gxmame_0.35beta2-1_i386.deb/download

Ajouter vos Roms dans le répertoire : /usr/share/games/xmame/roms, et le tour est joué !

KXMame

  • Le meilleur GUI pour xmame.SDL.
  • Prends en charge le plein écran et les manettes.
  • Capable de construire une liste de jeux.

  • Il est disponible via Adept ou bien Synaptic
  • Il fonctionne avec les paquets xmame-sdl et xmame-common

Si vous souhaitez l'installer à partir des sources, rendez vous à cette adresse : kde-apps.org

Utilisation

KXMame nécessite d'être configuré. Il faut renseigner :

  • La liste des répertoires roms et bios : /usr/share/xmame/roms/
  • Les pads : Dans le menu Settings>Configure kxmame…>Contrôleurs changer le "joystick device prefix" par /dev/input/js
  • Ensuite, dans le menu File sélectionner Audite tous les jeux

Pour un meilleur rendu vous pouvez utiliser l'effet deluxe scanlines pour affichage.

Wine Mame 32++ et le plugin kaillera

Dans le titre , tout est dis : L'autre façon de jouer à Mame, est d'utiliser wine.
L'avantage de cette solution est que vous pouvez utiliser le plugin kaillera pour jouer en réseau sur serveurs internet

Il suffit de télécharger la version windows de mame32++ et de coller les fichiers de l'archive kaillera dans le dossier de l'émulateur .

En se lançant Mame32 créé des dossiers dans votre dossier /home/utilisateur téléchargez alors ce fichier .hidden qui va cacher tous ces dossiers

Les roms cps2 sont d'autant plus compatibles avec ce programme windows

Erreurs connues

Si vous n'arrivez pas à copier les bios et les roms dans le répertoire /usr/share/xmame :

Utilisez la commande suivante afin d'avoir l'accès au dossier :

sudo chmod -R a+rwx /usr/share/xmame

Si vous obtenez ce message d'erreur :

ERROR: required files are missing, the game cannot be run. 

C'est que vous n'avez pas indiqué le bon chemin vers la rom ou le sample , ou que vous avez lancé la rom au lieu du sample.

"Un sample est un supplément essentiel au jeu , c'est lui qui définit le paramètre linguistique à utiliser".

Exemple pour le jeu "Marvel vs. Capcom" : Le nom de la rom est mvsc et le nom du sample US est mvscu.

Si vous obtenez ce message d'erreur :

cannot access OpenGL library libGL.so

Essayez de créer un lien symbolique vers la librairie OpenGL :

sudo ln -s /usr/lib/libGL.so.1 /usr/lib/libGL.so
sudo ln -s /usr/lib/libGLU.so.1 /usr/lib/libGLU.so

Sinon vous devrez soit installer xmame-sdl et l'utiliser via une commande de ce type :

xmame.SDL -jdev /dev/input/js -jt 1 -fullscreen -afs <rom> 

Soit compiler XMAME comme expliqué plus haut.

Si la rom n'est pas en plein ecran avec KXMame :

Choisissez pour Effets : scale2x (smooth scaling effect)

Alternatives à XMAME

SDLMAME est désormais inclue dans mame.


Contributeur : article proposé par manu_newbie et rudy85


xmame.txt · Dernière modification: Le 16/07/2013, 14:54 par 92.139.251.238
Le contenu de ce wiki est sous licence : CC BY-SA v3.0