Il y a 12 ans déjà , je vous avais fais un article sur l'ensemble des solutions pour utiliser MAME sur Mac. Malheureusement, cet article est entièrement obsolète. Des nombreuses solutions, il n'y en a qu'une seule qui reste viable, et il s'agit de la seule qui ne dispose pas d'interface graphique. Ce qui nous sauve, c'est que MAME intègre depuis sa version 0.170 un interface graphique rudimentaire, mais parfaitement suffisante. Mais avant de voir tout cela, reprenons depuis le début…
Qu'est ce que MAME ?
MAME est un émulateur multi-arcade, comme son nom l'indique. En effet, MAME est l'acronyme de Multiple Arcade Machine Emulator. Son but est de reproduire le plus fidèlement possible toutes les bornes d'arcade ayant jamais existé, quelque soit leurs âges ou leur origines.
Ainsi ce sont près de 40000 bornes que MAME connait, sans forcément toutes les émuler à la perfection. Si de nombreux jeux utilisent le même matériel, cela fait tout de même un sacré nombre de bornes dont il faut reproduire le fonctionnement avec du code.
D'autant qu'il arrive très souvent que des jeux utilisent le même hardware avec cependant de toutes petites variations. Cela peut être l'utilisation d'un co-processeur différent, la gestion du réseau ou encore la prise en charge de différents périphériques de jeu.
Les bornes d'arcade se sont démocratisées avec le traditionnel joystick accompagné de quelques boutons, comme ce fut le cas pour les bornes des jeux classiques que sont Street Fighter 2, World Rally ou encore Metal Slug. Mais chaque borne peut intégrer ce qu'elle souhaite en guide de manette.
Par exemple, la borne d'arcade de PONG, l'un des premiers jeux de l'histoire, considéré comme l'ancêtre du jeu vidéo, disposait d'un écran et de deux molettes, une pour chaque joueur.
Le jeu Terminator 2, lui, proposait de prendre le contrôle de deux mitrailleuses, une par joueur, fixées devant l'écran. Alors que d'autres jeux permettait de prendre un pistolet en main, afin de viser l'écran, comme Virtua Cop Police Trainer.
Et pour finir, mes favorites ! Si les bornes de simulation automobile ont eu autant de succès, c'est qu'elles permettaient bien souvent de prendre le volant, à proprement parler, des bolides que l'on pilote.
Les années 90, en particulier avec SEGA, a été l'âge d'or pour ces bornes. En 1992, SEGA révolutionne le genre avec Virtua Racing, la borne d'arcade permet d'ores et déjà de prendre le volant de la formule 1 proposée. Daytona USA (1993) et SEGA Rally Championship (1995) ont complètement relancé le genre. Ce sont les premiers jeux à proposer une 3D agréable à regarder grâce aux puces Model2. Ils ont été suivis par Scud Race (1996), Le Mans 24 (1997). Enfin, clôturant une décennie de bonheur, sortent Daytona USA 2 (1998) et le magistral SEGA Rally 2 (1998), tous utilisant la puissance des processeurs Model3. Tout ces jeux offraient une expérience unique, en proposant une cabine complète de pilotage, avec volant, pédales, levier de vitesse (manuel ou séquentiel), et même un frein à main sur SEGA Rally 2.
Sans oublier, une mention spéciale pour Manx TT Super Bike, un jeu de moto lui aussi développé par SEGA et utilisant une nouvelle fois, le Model2. Le jeu proposait carrément de chevaucher une moto fictive, d'accélérer et de freiner au guidon tout en tournant en faisant pencher l'engin.
Bref, vous l'avez compris, les périphériques de jeux peuvent être très variés selon le thème de chaque borne et MAME tente de permettre de jouer à l'ensemble de ces jeux en utilisant le matériel disponible.
Les ROMs
Comme pour chaque émulateur, il vous faudra les programmes qui vont avec. Et comme d'habitude, ces ROMs ne sont pas fournies avec l'émulateur. Elles se trouvent cependant plutôt facilement sur Internet. Attention tout de même, si MAME supporte près de 40000 jeux, c'est qu'il faudra au moins autant de ROMs, et si vous souhaitez avoir l'ensemble des ROMs disponibles, il vous faudra prévoir un disque de plus d'1 To.
Pour économiser de la place, MAME utilise un système de clones et ils sont nombreux. Par exemple, Street Fighter 2: Champion Edition, un classique du genre, dispose d'une multitude de clones. Cependant, tous ne contiennent pas l'intégralité du jeu. La ROM sf2ce contient le jeu original, ensuite les clones ne contiennent que les éléments qui diffèrent de la version d'origine.
Cela nécessite par contre, que vous possédiez la ROM du clone, mais aussi la ROM parente pour pouvoir jouer à la version modifiée. D'ailleurs, dans son interface, MAME vous indiquera si le jeu sélectionné est un parent ou un clone.
Certaines machines nécessitent l'utilisation d'un bios, il faudra donc trouver ces fichiers et les mettre dans le dossier des ROMs de MAME. Ils contiennent les fonctions des systèmes qui accueillaient les jeux.
Les ROMs (Parents, clones ou bios) sont un ensemble de fichiers rassemblés en un seul fichier ZIP. Il est nécessaire de conserver le fichier ZIP tel quel. MAME décompressera et lira le contenu de l'archive à la volée.
A l'origine, les jeux étaient simplement stockés dans des puces et nos ROMs sont simplement des dumps de ces puces. Mais avec les années passant, certains jeux sont devenus plus volumineux, nécessitant un peu plus d'espace de stockage. Les créateurs ont donc commencé à intégrer des disques durs ou des CDs/DVDs aux bornes. Il est toujours possible d'obtenir des dumps de ces jeux, mais ils ne sont plus au format ZIP. Ici ce sont des CHD, pour Compressed Hunks of Data (Morceaux de données compressés.) Ce sont bien souvent les données qui viennent en complément du programme présent dans la ROMs principale. Ainsi pour lancer un jeu disposant de CHD, il faudra la ROM au format ZIP ainsi que celle au format CHD.
Compatibilité
Comme pour tous les émulateurs, la compatibilité des jeux est un point important. Et comme MAME tente d'émuler l'ensemble des bornes créées depuis que le jeu d'arcade existe, la compatibilité varie très fortement. Les jeux les plus vieux sont évidemment les mieux émulés et les plus récents posent le plus de problème.
L'avantage de MAME, contrairement à un autre émulateur qui tenterai d'émuler n'importe quel jeu qu'on lui donne pour la plateforme de son choix, c'est qu'il connait l'ensemble des jeux. Et aussi, il connait sa capacité à émuler chaque jeu.
Par exemple, ici, en tentant de lancer Sega Rally Championship, l'émulateur nous renvoie un joli, mais fort peu agréable "NOT WORKING". Il n'est tout simplement pas capable de lancer ce jeu.
D'autres jeux peuvent être fonctionnels mais imparfaits, l'émulateur vous l'indiquera aussi. Vous pourrez jouer mais avec quelques petits défauts pour lesquels vous aurez été prévenus.
Ensuite, si un jeu est marqué comme fonctionnel mais que vous n'arrivez pas à le lancer, c'est qu'il vous manque une ROM ou une partie de ROM. L'émulateur dispose d'une fonction qui vous permet de tester une ROM ou l'ensemble de vos ROMs pour être sur qu'elles correspondent bien à la version qu'attend l'émulateur. Dans le cas contraire, MAME vous indiquera les éléments manquants ou défectueux.
Rythme des mises à jour
A chaque mise à jour de l'émulateur, le support de nouvelles ROMs est ajouté, tandis que d'autres s'améliorent. Mais attention, cela arrive aussi mais c'est plus rare, MAME cherchant l'émulation la plus fidèle, il se peut qu'un jeu fonctionnant précédemment ne fonctionne plus.
A chaque release, il est donc nécessaire de mettre à jour son pack de ROMs. Soit vous ne mettrez à jour que les ROMs que vous recherchez, soit vous trouverez une mise à jour différentielle permettant de conserver l'ensemble de sa collection à jour. Il suffit ensuite de fusionner les deux dossiers comme indiqué dans cet article.
MAME est mis à jour tous les derniers mercredis de chaque mois. Ce sont ainsi 12 versions qui se succèdent chaque année.
Que sont devenues toutes les interfaces présentées dans l'article précédent ?
Il y a 12 ans, je vous parlais de MAME OS X et de MacMAME, deux interfaces graphiques dédiées à MAME pour macOS.
MacMAME était le logiciel historique de notre plateforme. Il est sorti le 18 Février 1997 avec la version 0.4 de MAME. MacMAME a été, et de loin, l'un de mes émulateurs favoris à la fin des années 90. Je l'utilisais sur MacOS 9 et mon vieux G4 sawtooth, une bien belle époque. Malheureusement le support s'est arrête il y a quelques années et il semble que la dernière version disponible est la 0.177 (Août 2016). Depuis le site internet, le port n'est plus non plus disponible.
MAME OS X n'est arrivé que bien plus tard, en 2006, et portait tous les espoirs d'avoir un MAME moderne sur Mac OS X. Alors que MacMAME n'avait que très peu évolué, mis à part son évolution dans les versions de MAME. Dès sa première version, il supportait les technologies de Mac OS qu'était Core Video et Core Image. Il venait aussi avec un interface bien plus proche de l'esprit de Mac OS X, qui s'adaptait mieux aux grands écrans des Mac modernes. Malheureusement, après seulement quelques versions, et exactement 3 ans après la première version, l'application n'a plus été mise à jour et est aujourd'hui bloquée à la version 0.135 datant de Novembre 2009.
Pourquoi l'arrêt soudain de ces deux logiciels ? Certainement à cause de l'investissement en temps que représente la maintenance de ces projets. A chaque nouvelle version de MAME, il faudrait mettre à jour les logiciels, tout en prenant en compte les évolutions de macOS. Il s'agit d'un sacré travail.
Comment faire aujourd'hui pour lancer un jeu d'arcade sur Mac ?
Et bien cela sera le but de la partie 2 de cette article. Je vous montrerai comment installer MAME via deux manières différentes dans un premier temps, puis je tenterai de vous expliquer l'interface intégrée à MAME depuis sa version 0.170.
A très vite pour la suite !