Sommaire · English

Conventions de nommage et fichiers DAT

Choisir la convention

La source, le fichier DAT et la convention se règlent dans l'étape Collection, dans cet ordre : le cadre Source (seul champ obligatoire), puis le cadre Catalogue DAT (facultatif), qui porte aussi la convention, et, avec la convention MAME, le cadre Fichiers MAME (facultatifs). Sans DAT, une phrase sous le champ rappelle que les jeux ne sont alors reconnus que par le nom de leurs fichiers. Une croix au bout d'un champ de fichier ou de dossier le vide : c'est ainsi qu'on cesse d'utiliser un DAT, un dossier de CHD ou un fichier de catégories ou de notes.

L'étape Collection

La liste Convention, dans le cadre Catalogue DAT, propose :

La convention effective choisit aussi les réglages affichés dans la page Filtres (TOSEC, ou No-Intro / Redump, également utilisés pour MAME et ses listes de logiciels).

Lecture des noms

TOSEC

Un nom TOSEC range ses informations dans un ordre fixe :

Titre v1.1 (demo) (1991)(Éditeur)(Système)(Vidéo)(Pays)(Langue)(Copyright)(Statut)(Support)[drapeaux].ext

Par exemple Another World v1.1 (1991)(Delphine)(FR)(Disk 1 of 2)[cr Quartex].adf. RomSieve lit le titre, la version, la date, l'éditeur, le système (A500, AGA, C64...), le standard vidéo (PAL, NTSC), les pays, les langues (en, fr-de, M3 pour « 3 langues »), le support (Disk 1 of 2, Side B, Tape 1) et les drapeaux entre crochets :

Drapeau Signification
[!] Dump vérifié
[a], [a2] Dump alternatif (variante)
[b] Mauvais dump (bad dump)
[o], [u] Overdump, underdump
[v] Infecté par un virus
[cr], [t], [h], [f], [m], [p] Crack, trainer, hack, correctif, modification, version pirate
[tr Fr] Traduction

Un fichier dont le nom ne suit pas au moins la forme Titre (date)(éditeur).ext est non conforme.

No-Intro et Redump

Titre (Région) (Langues) (Rev 1) (Beta) (Disc 2).ext

Par exemple Super Mario World (USA).sfc ou Final Fantasy VII (Europe) (Disc 1).cue. RomSieve lit les régions, les langues, la révision, le statut de développement (Beta, Proto, Sample...), les parutions non officielles (Unl, Pirate, Hack...), les rééditions modernes (Virtual Console, Switch Online, Classic Mini...) et le numéro de disque.

Supports optiques

Un descripteur (.cue, .gdi, .ccd) et ses pistes (.bin, .img, .sub...) forment un set : ils sont analysés, renommés et transférés ensemble, sur le disque comme dans les archives. Lorsqu'un set doit être renommé pour éviter un conflit, le descripteur est réécrit pour désigner les pistes renommées.

Fichiers DAT

Un fichier DAT liste les ROMs d'une collection avec leur nom, leur taille et leurs sommes de contrôle (CRC32, souvent MD5 et SHA-1). RomSieve lit les formats Logiqx XML (.dat, .xml) et ClrMamePro (.dat) publiés par TOSEC, No-Intro et Redump.

Avec un DAT :

Quelques détails :

Vérifier le SHA-1

Le CRC32 est court : deux fichiers différents peuvent le partager. Avec Vérifier le SHA-1 (dans les options avancées), RomSieve calcule aussi le SHA-1 de chaque fichier identifié par son CRC32 quand le DAT en fournit un (c'est le cas des DAT Redump), et rejette la correspondance s'il diffère. C'est plus sûr mais plus lent, puisque chaque fichier identifié est relu (un fichier dans un ZIP doit être décompressé).

Vérifier le contenu des archives

Un fichier dans une archive (ZIP, 7z, RAR) est reconnu par le CRC32 que l'archive enregistre pour lui, sans être lu, et un set MAME est copié tel quel : une archive abîmée dont l'en-tête est juste passe pour complète. Avec Vérifier le contenu des archives (dans les options avancées), RomSieve décompresse chaque fichier de chaque archive et compare son contenu à ce CRC32, comme le full scan d'un gestionnaire de ROMs. Un fichier abîmé est non conforme (« Fichier abîmé dans son archive »), et le jeu dont une piste est abîmée l'est tout entier ; un set MAME abîmé est non conforme (« Archive abîmée »), ses ROMs comptées manquantes : réparez-le avec un gestionnaire de ROMs. La première analyse est beaucoup plus lente, puisque chaque archive est décompressée ; le résultat est ensuite gardé dans le cache des en-têtes, et seule une archive nouvelle ou modifiée est relue. Un fichier d'un 7z ou d'un RAR qui n'enregistre pas de CRC32 ne peut pas être vérifié.

Vitesse de calcul

Calcul des CRC, dans la fenêtre des préférences, fixe le nombre de fichiers analysés en même temps : 1 fichier à la fois convient mieux à un disque dur mécanique ; 2, 4, 8 ou Automatique accélèrent l'analyse sur un SSD, un disque NVMe ou un NAS rapide. Le résultat n'en dépend jamais. C'est une option de tri : elle est enregistrée dans les profils, et charger un profil peut la modifier. Les sommes de contrôle sont mises en cache : une deuxième analyse de fichiers inchangés est bien plus rapide.

DAT MAME

Un DAT MAME (la sortie de mame -listxml, ou un DAT non-merged ou merged produit par SabreTools) fait détecter la convention MAME : le badge affiche MAME (détecté). Elle peut aussi être choisie dans la liste, mais elle exige un DAT MAME.

Avec cette convention, l'unité est le set : une archive (ZIP ou 7z) qui porte le nom court d'une machine (sf2.zip).

Types de romsets

RomSieve trie les archives telles qu'elles sont : il ne reconstruit, ne répare ni ne convertit jamais un set.

Romset Une archive contient Avec RomSieve
non-merged Toutes les ROMs de sa machine, BIOS compris Chaque parent et chaque clone est un set à part : le 1G1R et les filtres choisissent entre eux.
merged Le parent et tous ses clones Trié tel quel, avec ses clones : le 1G1R et les filtres choisissent l'archive entière, pas un clone.
split Les seules ROMs propres à sa machine Un parent est trié normalement. Un clone ne fonctionne pas sans le set de son parent : il est signalé, et en 1G1R il perd toujours face à son parent complet.

Dans une collection merged ou split, les jeux prennent dans les sets de BIOS les ROMs qu'ils partagent avec leur BIOS : placez les sets de BIOS et de devices dans la source, RomSieve trie ceux dont les jeux retenus ont besoin. Pour changer de type de romset, utilisez un gestionnaire de romsets comme clrmamepro ou RomVault.

Les samples ne sont pas gérés, et un fichier hors d'une archive (sauf un CHD) n'est pas un set MAME.

Genre des machines

Le DAT de MAME ne dit pas le genre d'une machine. La communauté publie des fichiers de catégories, que RomSieve lit quand vous en indiquez un dans le champ Catégories de l'étape Collection (option --categories en ligne de commande) :

Une catégorie suivie de * Mature * signale une machine pour adultes. Un clone que le fichier ne cite pas prend la catégorie de son parent. Les catégories servent aux filtres, à la recherche du tableau et aux variables {genre} et {category} du modèle de dossiers. Un fichier introuvable ou illisible est signalé au journal, et le tri continue sans catégories.

Notes des machines

progettosnaps publie aussi bestgames.ini, qui note quelques milliers de jeux d'arcade sur 100, par tranche de dix (de 0 to 10 (Worst) à 90 to 100 (Best Games)). Indiquez-le dans le champ Notes de l'étape Collection (option --ratings en ligne de commande) : un clone prend la note de son parent, et une machine que le fichier ne cite pas est non notée. Les notes servent aux filtres de notes et au volume limité ; le panneau de détail du tableau les affiche.

Listes de logiciels MAME

En plus de ses machines d'arcade, MAME émule des consoles et des micro-ordinateurs, dont il décrit les cartouches, disquettes et cassettes dans des listes de logiciels (software lists) : une liste par type de support (megadriv pour les cartouches Mega Drive, a2600, cpc_flop...). Une collection Software List ROMs contient un dossier par liste, et une archive par logiciel dans ce dossier (megadriv/sonic.zip). RomSieve lit deux sortes de DAT pour une liste :

Chacun de ces DAT fait détecter la convention Liste de logiciels MAME (le badge affiche Liste MAME (détectée)), d'après l'éditeur que nomment ses logiciels. La convention peut aussi être choisie dans la liste, mais elle exige le DAT de la liste.

Pour trier une liste, choisissez son DAT et, comme source, le dossier de la liste (Software List ROMs/megadriv).

Pour trier plusieurs listes à la fois, choisissez un dossier de DAT : Parcourir... à côté du champ du DAT, puis Dossier de DAT (listes de logiciels MAME)…, ou --dat <dossier> en ligne de commande. Le dossier contient un DAT par liste : le dossier Software List ROMs du DatRoot de ROMVault, ou le dossier hash de MAME. Une sortie de MAME qui contient plusieurs listes (mame -getsoftlist, mame -listsoftware) fonctionne de même. La source est alors le dossier qui contient un dossier par liste (Software List ROMs), et Scanner récursivement les sous-dossiers doit être coché.

Sets split. Les collections de Pleasuredome sont split : l'archive d'un clone ne contient que les ROMs qu'il ne partage pas avec son parent. Avec le fichier hash, RomSieve le sait : un clone split retenu emporte son parent (pastille Requis), dont MAME a besoin. Un DAT SabreTools ne liste que les ROMs propres d'un clone et ne nomme pas son parent : le clone paraît complet, et rien ne dit qu'il a besoin de son parent. Dans MAME 0.289, cela concerne 868 des 41 505 clones des listes, surtout dans nes (416) et msx2_flop (114) ; utilisez le fichier hash pour ces listes.

Archives

Avec Inspecter les archives (ZIP, 7z, RAR) (option avancée, cochée par défaut), RomSieve liste les fichiers contenus dans chaque archive et les identifie par le CRC32 enregistré dans l'archive, sans rien extraire. Les fichiers retenus sont extraits lors du tri ; l'archive elle-même reste en place, même en mode Déplacer.

Fichiers CHD

RomSieve lit l'en-tête des fichiers .chd (versions 3 à 5) et leur liste de pistes sans les décompresser. Un CHD illisible ou incomplet est non conforme.