Débuter avec MAME sur macOS - Partie 4 - Aller plus loin avec les lignes de commande
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.
- Débuter avec MAME sur macOS - Partie 1 - Introduction
- Débuter avec MAME sur macOS - Partie 2 - Installation et configuration
- Débuter avec MAME sur macOS - Partie 3 - La mémoire du jeu vidéo
- Débuter avec MAME sur macOS - Partie 4 - Aller plus loin avec les lignes de commande
- Débuter avec MAME sur macOS - Partie 5 - Réglages graphiques
- Débuter avec MAME sur macOS - Partie 5b - Simuler l'affichage d'un écran cathodique
- Débuter avec MAME sur macOS - Partie 6 - Vérification simple des ROMs
- Débuter avec MAME sur macOS - Partie 7 - Vérification avancée des ROMs
- Débuter avec MAME sur macOS - Partie 8 - Tri des ROMs par genres et catégories
- Débuter avec MAME sur macOS - Partie 7b - Vérification complète des ROMs