Accueil > Dossiers > Les Émulateurs > Débuter avec MAME sur macOS - Partie 4 - Aller plus loin avec les lignes (...)

Débuter avec MAME sur macOS - Partie 4 - Aller plus loin avec les lignes de commande

mardi 19 novembre 2019, par sky

Même si l’on a tout fait pour occulter le fait que MAME soit une application en ligne de commande, il ne faut pas oublier qu’elle l’est ! Alors, pourquoi ne pas en profiter ?

En ajoutant des paramètres au lancement de MAME, il est possible de lui faire faire d’autres actions.

1/ Actions relatives à une machine

Pour commencer, retournons dans le passé, et lançons un jeu sans passer par l’interface graphique. Si je veux lancer Street Fighter 2 (à tout hasard, hein ...), il suffit de taper le nom de l’application, puis le nom de la machine

mame sf2

Comme MAME est gentil, vous pouvez aussi utiliser le nom du fichier, avec le .zip donc.

mame sf2.zip

En quittant le jeu, en appuyant sur Echappe (ESC), vous ne retournerez pas vers MEWUI, mais vers votre terminal.

Il est aussi possible de vérifier si une roms est valide, en ajoutant le paramètre -verifyroms. Toujours pour le même jeu

mame -verifyroms sf2

MAME renverra directement le résultat, ici

romset sf2 is good
1 romsets found, 1 were OK.

Si je reprends la ROM défectueuse vue dans la partie 2

mame -verifyroms sf2ce

j’obtiens le résultat

sf2ce       : ioc1.ic7 (260 bytes) - INCORRECT LENGTH: 279 bytes
romset sf2ce is bad
1 romsets found, 0 were OK.

MAME vous indique ce qu’il ne va pas.

Pour avoir le nom exact de la ROM, vous pouvez utiliser le paramètre -listfull

mame -listfull sf2

Le résultat obtenu est

Name:             Description:
sf2               "Street Fighter II: The World Warrior (World 910522)"

2/ Actions relatives à un ensemble de machine

Excepté le lancement d’un jeu, il est possible d’exécuter les autres commandes sur un ensemble de machines ou l’intégralité des machines connues de MAME. Attention tout de même, lancer une commande, sur l’ensemble des jeux, peut prendre pas mal de temps.

Vous pouvez essayer, et si vous trouvez que c’est trop long, vous pourrez toujours interrompre le programme avec les touches ctrl+C.

Pour vérifier toutes les ROMs relatives à Street Fighter 2, soit toutes les ROMs dont le nom commence par sf2, il faut demander

mame -verifyroms "sf2*"

le résultat commence par

romset sf2 is good

et se termine par

90 romsets found, 66 were OK.

Comme l’indique la fin du résultat, 90 ROMs ont été testées, et seulement 66 sont correctes. Attention, dans le lot, il n’y a pas que des ROMs relatives à Street Fighter 2. En effet, le jeu sf2049, par exemple, dont le nom est "San Francisco Rush 2049" correspondait aussi à la recherche.

Il est possible de le confirmer avec la commande listfull

mame -listfull "sf2*"

Notez l’utilisation des guillemets pour que le caractère étoile qui indique "n’importe quel caractère" soit compris.

3/ Actions relatives aux fichiers de configuration

Dans la seconde partie de notre série d’article, nous avons déjà vu le paramètre createconfig.
mame -createconfig

Il permet de demander à MAME de créer les fichiers de configuration dans leur version par défaut. Les fichiers sont, sur macOS, créé à la racine de votre dossier utilisateur. Si des fichiers existent déjà à cet endroit, ils seront écrasés par les nouveaux.

Si, à force de trifouiller dans les fichiers de configuration, vous avez perdu des éléments ou carrément planté la configuration, il peut être intéressant de retrouver les fichiers d’origine pour comparer et corriger les soucis.

La commande showconfig permet d’afficher la configuration courante de MAME. La commande revient à lire les fichiers de configuration. Cependant, en la couplant avec la commande grep, il est possible d’obtenir une information précise, comme ici par exemple, pour avoir le chemin vers les ROMs

mame -showconfig | grep rompath

le résultat contient uniquement la ligne

rompath                   /Volumes/Data/ROMs/MAME/ROMs;/Volumes/Data/ROMs/MAME/ROMs/CHD;

4/ Paramètres de configuration

Il est possible d’ajouter les mêmes paramètres que l’on retrouve dans les fichiers de configuration. Cette option permet tout simplement de tester des paramètres sans modifier ses fichiers de configuration.

Par exemple, pour utiliser un autre mode de rendu, par exemple celui de la librairie SDL

mame -video accel sf2

5/ Toujours plus ?

Cet article n’est qu’un petit aperçu des capacités de MAME en ligne de commande, si vous souhaitez une liste plus exhaustive, vous pouvez toujours vous rendre sur la documentation de MAME (en anglais), qui contient l’intégralité des possibilités.

Un message, un commentaire ?

Forum sur abonnement

Pour participer à ce forum, vous devez vous enregistrer au préalable. Merci d’indiquer ci-dessous l’identifiant personnel qui vous a été fourni. Si vous n’êtes pas enregistré, vous devez vous inscrire.

ConnexionS’inscriremot de passe oublié ?