top of page

MAME, MERGED, SPLIT quésaco ??

Photo du rédacteur: Bob MoraneBob Morane

Un grand nombre de personne posent des questions au sujet des roms Mame car ils les trouvent compliqué :

"J'ai mis à jour mon MAME et maintenant plus aucun de mes jeux ne fonctionnent"

"J'ai téléchargé le jeux "X" sur le site "Y" mais il ne fonctionne pas"

"Pourquoi ils n'ont pas fait aussi simple que pour les autres systèmes comme la megadrive ou la SNES? Ils sont nazes !"

Je vois fleurir ce genre de commentaires un peu partout sur les réseaux sociaux. Certes le fonctionnement des roms Mame est plus compliqué que les Rom console, mais au final pas tant que ça. Il y a simplement quelques concepts à comprendre et quelques mots de vocabulaire en anglais et tout deviendra clair :) Je vous ai donc synthétisé et reformulé ces explications que vous pouvez trouver en anglais un peu partout.

Qu'est-ce qu'une ROM ?

En termes simples, un fichier ROM est la "copie" (dump) du code stocké dans une puce ROM (ou IC). Pour les systèmes simples comme NES, SNES ou Megadrive, il s'agit du jeu entier, tu pourras copier la cartouche dans un seul fichier et un émulateur aura toutes les données nécessaires pour exécuter le jeu.

Les jeux d'arcade sont plus compliqués que cela, il y a beaucoup plus de puces différentes et beaucoup de ces puces contiennent du code ou des données qui sont nécessaires pour faire fonctionner le jeu, chacune des ces puces doit être copiée séparément et toutes sont nécessaires pour que l'émulation fonctionne. En résumé, un jeu d'arcade est donc composé de plusieurs puces et donc une Rom Mame est composée des copies de toutes ces puces dans des fichiers séparés.

Le fichier généralement appelé ROM MAME est en fait une archive zip (ou 7z) de tous les fichiers ROM pour un jeu d'arcade particulier et est communément appelé un "ROM set". A ne pas confondre avec un "ROM set Mame" qui lui désigne le pack de tous les jeux (Pleins de Zip) / contrairement à un ROM set qui lui désigne un groupe de puce qui constitue un jeu (UN zip)

Qu'en est-il des parents et des clones, que sont-ils?

Finalement, les programmeurs ont commencé à remarquer que beaucoup de fichiers ROM en cours de copie étaient les mêmes que d’autres fichiers ROM pour d’autres jeux, et que dans de nombreux cas, seuls quelques-unes des puces seraient différentes. Ces jeux sont des variantes les uns des autres, c'est ainsi que le concept de jeux Parent / Clone est né.

Et les ensembles ROM Split / Merged?

Aux origines, l'organisation des ROM était plus simple à comprendre, chaque fichier ROM d'un jeu particulier étant stocké dans un dossier ou un fichier zip nommé d'après le jeu. Un zip, un jeu. Facile!

Il y a longtemps, lorsque l'espace disque était coûteux, il semblait inutile de stocker de très nombreuses copies du même fichier, de sorte que le concept de Split ROM Sets est né. Un ensemble appelé "parent" contiendrait tous les fichiers ROM nécessaires pour exécuter une version «principale» du jeu. Cette version "parent" principale serait séparé de tous les autres jeux basés sur ce jeu. Un ensemble "SPLIT" (clone) ne contiendrait que les fichiers ROM qui sont différents de l'ensemble parent.

Exemple : Pour jouer à Pac-Man, tu auras besoin de l'ensemble Puck-Man (le Parent) et de l'ensemble Pac-Man (le Clone)

Cela signifie bien sûr que si tu voulais exécuter ce jeu Clone maintenant, au lieu d'un seul ROM Set, tu en aurai besoin de deux, le Parent et le clone (Split Set).

MAME utilise toujours la méthode non fractionnée (Non-Split) et recherchera tous les fichiers ROM requis, d'abord dans le zip de l'ensemble de fractionnement (appelé "clone set"), puis dans l'ensemble parent (appelé "set parent"), tant qu'il trouve le bon fichier quelque part, il s'exécutera.

L'évolution suivante de cette réflexion a été: "Si dans un set SPLIT, mame cherche dans l'ensemble parent tous ses fichiers ROM, pourquoi se donner la peine de séparer les clones?" C'est ainsi que les ensembles fusionnés (Merged) sont nés. Un ensemble fusionné contient tous les fichiers pour chaque version clone d'un jeu parent.

Ok j'ai compris, qu'en est-il des BIOS set ?

De nombreux jeux d'arcade sont écrits pour le même «système», parfois basés sur une console de salon avec des modifications apportées pour l'utilisation d'arcade. Des exemples populaires de ça sont le Mega-Tech (Megadrive), le Playchoice (NES), NeoGEO. Ces systèmes contiennent une unité de base et un port de type cartouche pour les jeux.

Exemple : Pour jouer à «King of Fighters 10th Anniversary», tu aurai besoin de l'ensemble NeoGEO (le BIOS), de l'ensemble «King of Fighters 2002» (le parent) et de l'ensemble «King of Fighters 10th Anniversary» (le clone)

Les fichiers ROM pour chaque jeu ont également besoin des fichiers ROM pour le système, un peu comme pour Parent / Clones, mais les jeux n'ont pas besoin d'être basés les uns sur les autres. Encore une fois pour économiser de l'espace et parce qu'ils sont regroupés logiquement (et physiquement) de cette façon dans le monde réel, les fichiers ROM de l'unité de base peuvent être regroupés dans ce qu'on appelle un ensemble BIOS (BIOS set).

Si tu as un ensemble ROM Split, tu aura également des ensembles BIOS séparés. Maintenant, tu aura peut-être besoin de trois fichiers pour lancer un jeu !

Wow! OK quelque chose d'autre?

Oui. "Device" ou en français appareil.

Exemple : Pour jouer à «Galaga», tu aura besoin de l’ensemble ‘Galaga’ (le parent), de l’ensemble ‘Namco 51xx’ (un appareil) et de l’ensemble Namco 54xx (un appareil)

Les appareils (que j'appellerai DEVICE) sont un concept MAME pour regrouper un peu les fonctionnalités spécifiques de manière standard. Ils sont utilisés comme structure pour faciliter la création de pilotes et ressembler davantage aux machines du monde réel. Parfois, ces DEVICE utilisent le code des puces ROM dans plusieurs jeux, comme le font les ensembles de BIOS.

Ces ensembles ROM ne sont pas classés comme ensembles BIOS, ensembles parents ou ensembles clones.

OK, je comprends tout cela, je ne sais toujours pas pourquoi mes jeux ne fonctionnent pas.

Tu as probablement obtenu tes ROM d'un site ROM, le site ROM ne sait pas ou ne se soucie pas du type de ROM SET dont ils disposent. Tu as peut être téléchargé un jeu pour une version de MAME sortie depuis un certain temps, en supposant que les anciennes versions de ROM fonctionneront avec les versions actuelles de MAME.

Un grand nombre de fichiers ROM ont été mal copiés lorsque la scène émulation a commencé, tout le monde était débutant, c'est incroyablement difficile et des erreurs ont été commises. Les émulateurs ont été écrits pour utiliser la meilleure copie disponible et MAME n'a pas fait exception. Au fil du temps, de nouvelles copies (redump) ont été effectués pour remplacer les mauvaises copies, les copies mal nommées ont été correctement identifiés et les conventions de dénomination des fichiers ROM ont été modifiées. Au fur et à mesure que cela se produisait, les développeurs de MAME ont mis à jour les ensembles de ROM avec les fichiers ROM appropriés, ont changé les noms des fichiers mal nommés et ont généralement nettoyé au fur et à mesure que les choses s'amélioraient. Ensuite, les ensembles Split ont été introduits et toutes les ROM ont été réorganisées à nouveau, puis les ensembles BIOS ont émergé et ont provoqué une autre grande réorganisation. Enfin, les périphériques (Device) ont été créés et les ensembles de ROM ont de nouveau changé. Tout cela est toujours en cours. De nouveaux jeux sont ajoutés, les mauvaises copies sont remplacées, les fichiers sont renommés, les ensembles sont réorganisés. Chaque fois que cela se produit, le ROM set pour ce jeu des versions précédentes ne fonctionne plus. Donc, pour répondre à la question initiale…

1. Ton ROM set est trop ancien.

2. Tu dispose d'une ROM pour la version actuelle, mais elle nécessite un ou plusieurs ensembles Parent / BIOS / Device.

La solution la plus simple à l'un ou l'autre de ces problèmes consiste à obtenir un ensemble complet de la dernière version d'un ROM MAME set.

Alors, quel est le meilleur? Non fusionné (Non-Merged) / scindé (Split) ou fusionné (Merged)

Il n'y a pas de réponse directe à ça, cela dépendra de ta situation et de ce que tu as l'intention de faire avec les ROM lorsque tu les auras.

• MERGED: Si l'espace disque est un problème, tu peux économiser quelques Go en utilisant un ensemble fusionné (Merged) au lieu d'un ensemble fractionné (Split), mais ton frontend (si tu en utilises un) peut ne pas être en mesure de dire que tu as un jeu disponible ou s'il s'agit d'un clone. Par exemple les fichiers Xml de Hyperspin sont basé sur le set Split et non le set Merged. Cela ne pose pas de souci sur les FE récents. Mame 0.231 Merged = 69Go, le nombre de fichiers différents est le plus faibles des trois ce qui rend plus rapide les transferts.

• NON-MERGED : Si tu veux pouvoir supprimer les ROM que tu ne veux pas sans en casser d’autres, tu auras besoin d’un ensemble non fusionné (Non-Merged), mais cela prendra plus d’espace jusqu’à ce que tu aies terminé la suppression. Mame 0.231 Non merged = 126 Go, le plus simple pour celui qui veut choisir ses jeux lui-même ou ne pas se prendre la tête avec les différentes dépendances.

• SLIT : Si tu veux quelque chose entre les deux extrêmes ci-dessus, un ensemble fractionné (Split) est fait pour toi, mais la suppression d'un ensemble parent, d'un ensemble BIOS ou d'un périphérique (Device) tuera tous les autres ensembles ROM qui en dépendent. Mame 0.231 Split = 72Go, l'idéal pour ceux qui vont plus loin avec Mame et font du développement.

Les ensembles fractionnés (SPLIT) sont les ROM les plus courantes trouvées sur les sites Web d'émulation.

Si tu veux investir du temps dans l'apprentissage d'un gestionnaire de ROM comme ClrMAME Pro, tu peux changer entre les différents types, reconstruire tes ensembles (set), ajouter de nouvelles ROM et auditer tes sets de ROM afin de voir ce qui est cassé et où.

Qu'est-ce qu'un CHD?

Les nouvelles machines d'arcade (et les consoles de jeu et les ordinateurs désormais pris en charge par MESS) ont beaucoup plus de données à stocker que les classiques, elles ont commencé à inclure des disques durs et des CD (ou DVD, et des disques laser) pour stocker leurs données et utiliser une simple puce ROM pour démarrer le système et le charger. Ces périphériques de stockage multimédia de masse sont pris en charge dans MAME en utilisant les CHD.

CHD signifie «Compressed Hunks of Data». Ils sont déjà compressés, ils ne sont donc pas d'avantage compressés et doivent être stockés dans un dossier identique au jeu auquel ils appartiennent.

Qu'est-ce qu'une liste de logiciels (Software List) ?

Avant MAME v0.162, MAME avait une application sœur appelée MESS (le Multi Emulator Super System) qui tentait de faire pour les consoles, les ordinateurs et les appareils portables ce que MAME faisait pour les machines d'arcade. La version 0.162 a vu ces deux applications fusionnées en une seule application abandonnant le nom MESS dans le processus.

Si tu émules une console ou un ordinateur, tu auras besoin d'un software à mettre dedans. C'est à cela que servent les listes de software. Il s'agit d'une liste organisée des logiciels disponibles pour un cœur de système émulé (formellement MESS).

Il en existe deux principales : Software List ROM et Software List CHD.


Si tu as réussi à tout lire jusqu'ici (bravo!), tu devrais savoir ce que les deux veulent dire.

#Stay tuned !


2 002 vues0 commentaire

Posts récents

Voir tout

Comments


  • Youtube
bottom of page