Si vous aimez les jeux rétro, vous avez peut-être rencontré des fichiers avec une extension «.chd». Dans la plupart des cas, ces fichiers ont certaines choses en commun: ils ont des noms cryptiques, sont (relativement) volumineux et ne semblent pas être utiles à quoi que ce soit.
Que sont les fichiers CHD?
En bref, les fichiers CHD sont des images de disque de jeu d’arcade utilisées par MAME. Cela explique pourquoi leur taille de fichier est si grande. De nos jours, ils sont devenus très populaires parmi de nombreux émulateurs qui utilisent des ROM relativement grandes. Cela inclut des émulateurs comme certains des cœurs PlayStation Libretro de Retroarch et, par extension, toutes les distributions populaires orientées vers l’émulation pour la série de micro-ordinateurs Raspberry Pi.
Si vos CHD sont des ROM MAME, ils doivent (généralement) être stockés dans des dossiers portant le même nom sous le dossier ROM principal de MAME.
S’il s’agit de sauvegardes de jeux pour la PlayStation d’origine ou une autre console utilisant des disques optiques, ils devraient, dans la plupart des cas, être placés directement dans le sous-répertoire ROM de l’émulateur.
Dans le cas des émulateurs de console, les fichiers CHD contiennent généralement l’intégralité du jeu, vous pouvez donc les «ouvrir» dans l’émulateur et commencer à jouer. Dans MAME, cependant, ils ne sont qu’une partie du jeu car MAME émule principalement les machines d’arcade.
Contrairement aux consoles de jeu, les jeux d’arcade avaient généralement du matériel et des logiciels dédiés qui différaient d’un jeu à l’autre. La partie logicielle de l’équation était généralement stockée dans des puces ROM. À un moment donné, les puces ROM étant chères et les jeux de plus en plus volumineux avec des graphismes plus impressionnants, leurs développeurs ont commencé à utiliser des CD ou des disques durs. Ils les utilisaient pour stocker les actifs les plus importants des jeux – graphiques, audio, musique, animations – tout en conservant les plus petites «parties centrales» d’un jeu sur les puces ROM.

La raison pour laquelle nous mentionnons tout cela est que les CHD seuls sont généralement inutiles avec MAME. Vous aurez besoin des fichiers ROM réels qui les accompagnent pour pouvoir les utiliser. Les fichiers CHD eux-mêmes contiennent les actifs du jeu mais pas le jeu lui-même. Vous devrez trouver les ROM qui accompagnent votre fichier CHD spécifique et tous les fichiers supplémentaires liés au matériel sur lequel le jeu a été exécuté. Pour cela, puisqu’il reste une zone grise légale, on ne peut que dire que Google est votre ami.
Placez ces ROM dans le sous-répertoire ROM de MAME, placez vos CHD au même endroit mais dans des sous-sous-répertoires avec leur propre nom, puis essayez d’exécuter la ROM avec MAME. Si vous n’utilisez pas de ligne de commande mais une variante de MAME basée sur l’interface graphique, vous devrez peut-être d’abord exécuter une analyse / un audit de vos ROM.
Vérifier le contenu des fichiers CHD
Le meilleur (et, d’après ce que nous savons, le seul) outil pour travailler avec les fichiers CHD vient de leur source, de MAME lui-même. C’est appelé chdman. En fonction de votre configuration MAME, il est soit déjà installé, soit vous pouvez l’amener à bord avec la commande:
sudo apt install mame-tools

Pour vérifier une image CHD et voir des informations sur sa structure, utilisez:
chdman info -i IMAGE_FILENAME.chd

Convertissez vos CHD
Vous pouvez utiliser le même outil à la fois pour extraire le contenu d’un fichier CHD et pour en créer un.
Extraire un CHD dans un format plus accessible, comme IMG pour les sauvegardes de disque dur ou une combinaison BIN & CUE pour les sauvegardes de CD, n’a un intérêt que si vous allez utiliser ces fichiers dans un émulateur différent qui ne prend pas en charge le CHD format. Dans le cas de fichiers image de disque dur, utilisez:
chdman extracthd -i IMAGE_FILE.CHD -o OUTPUT_FILE.IMG

Pour les sauvegardes sur CD, remplacez extracthd avec extractcd dans la commande ci-dessus.

Si vous utilisez un émulateur tel que PCSX ReARMed ou Demul, RetroArch ou une distribution d’émulateur pour votre Raspberry Pi, théoriquement, il vous suffit de placer vos fichiers CHD dans le chemin ROM de l’émulateur pour qu’il les détecte et les utilise.
Votre dossier ROM peut sembler chaotique s’il contient des sauvegardes de plusieurs jeux qui:
- Étaient à l’origine au format CD
- Sont maintenant stockés dans les combinaisons BIN & CUE
- Contient plusieurs pistes audio
En effet, avec la combinaison CUE & BIN, chaque piste du CD original est sauvegardée dans un fichier BIN distinct, de sorte qu’un seul jeu peut être divisé en des dizaines de fichiers.

Le format de fichier CHD a été créé comme un moyen plus moderne de stocker de telles ROM, et il excelle donc à tous égards. Tout peut être contenu dans un seul fichier et la compression sans perte est intelligemment appliquée en fonction du contenu pour des résultats optimaux. Par exemple, des données typiques peuvent être compressées avec le zlib algorithme, mais les pistes audio individuelles sont compressées avec Flac. Cela conduit à des taux de compression élevés sans perte de données, car les types de compression utilisés sont «sans perte».

Pour convertir un jeu divisé entre un CUE et un ensemble de fichiers BIN en un seul fichier CHD, utilisez:
chdman createcd -i "FILENAME.cue" -o "OUTPUT_FILENAME.chd"
Bien que vous le puissiez, vous n’avez pas à modifier les paramètres de compression – les choix optimaux seront automatiquement choisis pour vous. Lors de la conversion, chdman présentera, entre autres informations, les différents types de compression qu’il utilise dans chaque cas.

Une fois la conversion terminée, essayez de charger votre nouveau fichier CHD dans le même émulateur que vous avez utilisé initialement pour charger ce jeu. Si cela fonctionne, supprimez les fichiers originaux et passez au jeu suivant.

Si vous gardez beaucoup de jeux rétro, en convertissant le plus grand d’entre eux au format CHD, au moins pour les émulateurs qui le prennent en charge, vous pouvez finir par économiser plusieurs gigaoctets d’espace – des gigaoctets que vous pourrez ensuite utiliser pour stocker encore plus. jeux rétro!




















