[Anleitung] ROM Management für Konsolen (ROMulus)
-
Einleitung
ROM Management ist für viele User immer noch ein Thema, dass mit einem großen Fragezeichen versehen ist. Viele Fragen hier im Forum würden erst gar nicht auftreten, wenn ROM Management kein ungewöhnliches, sondern ein selbstverständliches Thema wäre.
Um nun ein wenig Licht ins Dunkel der Abgründe des ROM Managements zu bringen, beschreibe ich im Folgenden das Tool ROMulus, da es für mich das am einfachsten zu handhabende Tool ist, dass man im Moment zur Verfügung gestellt bekommt. Natürlich gibt es noch weitere Tools, wie bspw. clrmamepro, oder auch ROMcenter, aber wie bereits erwähnt, erfüllt ROMulus den Zweck am einfachsten und am übersichtlichsten.
Hinweis
ROM Management trifft NICHT NUR auf Arcade Spiele zu, sondern kann (sollte) auch für Konsolenspiele angewandt werden. Zumindest bei den Systemen, bei denen es Sinn macht.
- Weiterführende Links zu diesem Thema findest Du am Ende dieser Anleitung!
- Weitere Erklärungen zu den einzelnen Punkten findest Du im Abschnitt "Erweiterte Erläuterung". In den Punkten selber, die erweitert beschrieben werden sollen, wird es einen Hinweis auf o.g. Abschnitt geben.
WICHTIG!
Bitte lies erst die gesamte Anleitung und solltest Du danach noch Fragen haben, stelle sie bitte in einem gesonderten Thread unter EMULATOREN ARCADE/PC/KONSOLE und beziehe Dich explizit auf den Punkt, der Dir unklar ist.
Vorbereitung
Was wird benötigt?
- ROMulus natürlich HIER downloaden
- DAT Files für die jeweiligen Systeme (siehe unten)
- ROMS
- Zeit
- Geduld
DAT Files
DAT Files sind (in diesem Fall) Textdateien im XML Format, die Informationen zu Spielen und Systemen beinhalten. Diese werden von der Community nach bestem Wissen und Gewissen gepflegt und beinhalten, je nach Quelle, folgende Daten über ein Spiel:
- Name
- Datum der Veröffentlichung
- Region
- Beschreibung
- SHA1 Wert
- MD5 Checksumme
Als die "besten" DAT Files für Konsolenspiele haben sich die von NO-INTRO erwiesen. Natürlich gibt es auch andere Quellen (hunderte), aber ich beschränke mich für dieses Tutorial auf NO-INTRO.
Hier ein kurzer Auszug (Beispiel) aus einem DAT File für den SNES:
game ( name "2020 Super Baseball (USA)" description "2020 Super Baseball (USA)" rom ( name "2020 Super Baseball (USA).sfc" size 1572864 crc 0D77933E md5 6AE225F4D94D3017415714449246D2E1 sha1 F285D6B3717A571002A5E9E0B732F08F100D2514 flags verified ) ) game ( name "3 Ninjas Kick Back (USA)" description "3 Ninjas Kick Back (USA)" rom ( name "3 Ninjas Kick Back (USA).sfc" size 2097152 crc F2EE11F9 md5 C638C1175840C6640D897951DAA73637 sha1 B619576A51A3968E243028A830A455D40CF92E78 flags verified ) ) game ( name "7th Saga, The (USA)" description "7th Saga, The (USA)" rom ( name "7th Saga, The (USA).sfc" size 1572864 crc B3ABDDE6 md5 A42772A0BEAF71F9256A8E1998BFE6E3 sha1 8D2B8AEA636A2239805C99744BF48C0B4DF8D96E flags verified ) ) game ( name "90 Minutes - European Prime Goal (Europe)" description "90 Minutes - European Prime Goal (Europe)" rom ( name "90 Minutes - European Prime Goal (Europe).sfc" size 2097152 crc 1AD61BD0 md5 305D00418B1302139FA01FB1640E2C65 sha1 C46A2A6AACD0E338F11B7EF0ABF8C79CC81433FE flags verified ) )
Anleitung
1. Nachdem ihr euch ROMulus heruntergeladen habt, entpackt ihr das Archiv in ein Verzeichnis eurer Wahl
2. Anschließend solltet ihr folgende Dateien/Verzeichnisse haben
3. Bevor ihr das Programm nun startet, solltet ihr in eurem Virenprogramm ein Ausnahme für das Tool einrichten (siehe Erweiterte Erläuterung)4. Startet ihr ROMulus, werdet ihr mit folgender Meldung begrüßt die ihr mit OK bestätigt.
5. Willkommen bei ROMulus
6. Da bereits eine Datenbank angelegt worden ist (default.rml), können wir jetzt ein DAT File in unsere Datenbank mit aufnehmen. Um das zu tun, gibt es nun 2 Wege.
6.1. Ihr folgt DIESEM LINK und wählt dann die DAT für das System, dass ihr in eure Datenbank aufnehmen wollt (in diesem Beispiel "Nintendo - Super Nintendo Entertainment System (<Datum und Uhrzeit>)". Klickt auf das Diskettensymbol neben dem System, um die DAT als ZIP-Datei herunterzuladen.
Wählt ihr diesen Weg, macht bitte mit Punkt 7 weiter.
6.2. ODER ihr klickt INNERHALB von ROMulus auf den Updater in der Menüleiste und bekommt folgendes Fenster angezeigt
Wählt ihr den Weg über ROMulus, macht bitte bei Punkt 6.2.1 weiter.
6.2.1. Im "Updater" wählt ihr unter DAT Gruppen den Punkt "No-Intro" und klickt anschließen auf "Suche"
6.2.2. Nachdem die Suche beendet ist, bekommt ihr folgendes Fenster angezeigt:
6.2.3. In der Ergebnisliste könnt ihr nun nach unten scrollen und doppelt auf Nintendo - Super Nintendo Entertainment System (<Datum und Uhrzeit>) klicken und gelangt dann automatisch auf die in Punkt 6.1. genannte Seite. Dort ladet ihr das DAT File als ZIP-Datei herunter, in dem Ihr auf das Diskettensymbol neben dem System klickt. (siehe "Erweiterte Erläuterung")
7. Nachdem ihr euch nun auf einem der beiden Wege das DAT File besorgt habt, legt es in einem Ordner eurer Wahl ab und lasst es als ZIP-Datei
8. Wieder in ROMulus, klickt ihr nun "DATs hinzufügen" und navigiert dann in dem sich öffnenden Fenster zu dem DAT File (ZIP-Datei), die ihr gerade heruntergeladen habt und öffnet diese.
9. Es öffnet sich folgendes Fenster
Hier werden euch die Informationen des DAT Files angezeigt. Die Beschreibung könnt ihr ändern, aber in diesem Beispiel lasse ich die Beschreibung, wie sie ist.10. Bestätigt das Fenster mit "Ja", oder "Ja für alle" (siehe Erweiterte Erläuterung) damit ihr anschließend folgendes Fenster angezeigt bekommt
11. Bestätigt den Import mit "OK" und schaut euch einmal eure neue Übersicht an
An sich ist die Übersicht selbsterklärend, aber ich gehe trotzdem kurz darauf ein:
- Beschreibung: Beschreibt das DAT File innerhalb eurer Datenbank und kann auch jetzt noch verändert werden
- Version: Zeigt euch die Versionsnummer des DAT Files an (meist, wie hier, mit Datum und Uhrzeit)
- Vorhanden Sets: Zeigt auch die Anzahl der Sets die ihr besitzt und die Anzahl der Sets innerhalb der DAT (siehe Erweiterte Erläuterung)
- Vorhanden Roms: Zeigt euch die Anzahl der ROMs die ihr besitzt und die Anzahl der ROMs innerhalb der DAT (siehe Erweiterte Erläuterung)
- Dateimodus: Für diese Beispiel nicht relevant, zeigt euch aber, in welchem Modus eure ROMs vorhanden sind (siehe Erweiterte Erläuterung)
- Freigegeben: Dies ist eine zukünftige Funktion von ROMulus, die noch nicht implementiert ist. Ignorieren...
- Hinzugefügt: Das Datum, an dem Ihr die DAT eurer Datenbank hinzugefügt habt
- Letzter Scan: Zeigt euch, wann ihr das letzte mal einen Scan mit dieser DAT durchgeführt habt.
- Name: Der Name der DAT
- Pfad: Bezieht sich auf die Linke Seite der Ansicht (lila Ordner). (siehe Erweiterte Erläuterung)
12. Nun legen wir endlich mit dem eigentlichen ROM Management los und klicken dafür doppelt auf den Datenbankeintrag, den wir gerade angelegt haben und bekommen anschließend folgendes Fenster angezeigt
13. Richten wir nun unseren Blick als erstes auf den Bereich UNTER der Liste
Diese drei Symbole verraten uns unseren "Status". Der grüne Ordner zeigt uns, wie viele Spiele wir besitzen, der gelbe Ordner zeigt uns, welche Spiele wir nur unvollständig besitzen und der rote Ordner zeigt uns, wie viele Spiele uns fehlen. Jeden dieser drei Ordner kann man anklicken und die darüber stehende Liste filtern. Standardmäßig sind alle drei Ordner aktiv, damit man alle Informationen bekommt. Möchte man aber bspw. nur die Spiele sehen, die man hat, klickt man den gelben und den roten Ordner an, um sie zu deaktivieren.
14. Schauen wir uns nun mal die lange Liste an (siehe Bild oben). Diese zeigt uns im Detail, welche Spiele wir haben (grün), welche nur unvollständig vorhanden sind (gelb) und welche uns fehlen (rot).
15. Lasst uns jetzt in die Grundeinstellungen von ROMulus gehen, in dem wir auf "Einstellungen" klicken. Die Einstellungen sind selbsterklärend, bis auf einen wichtigen Part, den ich im folgenden erläutere:
"Verzeichnisse" ist der Punkt den ich meine. Klickt diesen in der linken hälfte der Einstellungen an und es erscheint folgendes Fenster:
- Standard Backup-Verzeichnis: Hier legt ihr fest, wohin ROMs verschoben werden sollen, die nicht mehr benötigt werden (!!WICHTIG!!)
- Temp-Verzeichnis: Dieser Pfad wird für temporäre Aufgaben benötigt, wie z.B. neupacken der Archive, etc.
- Standard Komprimierungs-Einstellungen:
- Erstes Symbol: Das ist das Symbol für ROMs, gleich welcher art. Diese sollten IMMER mit ZIP Stufe 9 gepackt werden. Im Dropdown kann noch 7zip, oder RAR als Archiv gewählt werden, jedoch empfiehlt sich für so ziemlich jeden Emulator die Verwendung von ZIP-Archiven
- Zweites Symbol: Der Lautsprecher dient als Symbol für Samples, die für einige Arcade Spiele benötigt werden und auch diese sollten als ZIP mit Kompressionsstufe 9 gepackt werden.
- Drittes Symbol: Das ist das Symbol für CHD Dateien (Compressed Hard Disk) und für selbige sollte AUF KEINEN FALL eine Komprimierung eingestellt werden. Stattdessen gehören diese in einzelne Ordner, was wiederum mit der Einstellung "keine Kompression" erreicht wird. CHD Dateien benötigt man NUR für Arcade Spiele.
Nachdem Alles eingestellt ist, klicken wir auf "Übernehmen".
16. Nun ist es endlich soweit. Lasst und jetzt prüfen, wie viele Spiele wir haben, die dem DAT File entsprechen und somit fast ein Garant dafür sind, dass sie auch auf eurer recalbox laufen. Dazu klicken wir auf den Scanner im oberen Bereich von ROMulus
Es öffnet sich folgendes Fenster
Hier nehmen wir nun folgende Einstellungen vor:
- Klickt auf das gelbe Ordnersymbol in der Mitte des Fenster und wählt das Verzeichnis, in dem eure ROMs liegen, die ihr prüfen wollt. Hinweis: Es ist egal, in welchem Format eure "Quell-ROMs" vorliegen (zip, rar, 7z, etc.)
- Klickt nun auf das blaue Symbol, um den Backup-Pfad zu verwenden, den ihr in den Grundeinstellungen eingestellt habt
17. Lasst alle anderen Einstellungen, wie sie sind und klickt auf Start
18. Der Scanner fängt nun an, das Verzeichnis, dass Ihr angegeben habt, zu prüfen, in dem er die in dem Ordner vorhandenen ROMs mit dem DAT File abgleicht. Das führt mit SEHR großer Wahrscheinlichkeit dazu, dass ihr nach kurzer Scanzeit folgenden Dialog angezeigt bekommt
Dieser Dialog zeigt euch, dass der Scanner ein Spiel in eurem Ordner gefunden hat, dass auch in der DAT existiert, eure Kopie aber nicht den Daten der DAT entspricht. Deshalb werdet ihr darauf hingewiesen, dass das Spiel (ROM) "repariert" werden muss. Um das zu tun, muss der Scanner das ROM entpacken (in das Verzeichnis, dass ihr in der Grundeinstellung eingegeben habt), es ggfls. umbenennen und dann wieder in ein Archiv packen, um es dann korrekt benannt und mit den korrekten MD5 und SHA1 Summen in eurem Verzeichnis abzulegen. Ihr bestätigt dies Dialog mit "Ja für alle", damit ihr nicht bei jedem Spiel wieder gefragt werdet. Der Scanner macht nun weiter.
19. Im weiteren Verlauf des Scans werdet ihr auch mit Sicherheit den folgenden Dialog angezeigt bekommen
!! GUT AUFPASSEN JETZT !!
Dieser Dialog teilt euch mit, dass das gefunden Spiel (ROM) in "diesem Profil" nicht mehr benötigt wird. Das bedeutet, dass das gefundene Spiel nicht den Einträgen der DAT entspricht und somit gelöscht werden kann. Es kann viele Gründe für die fehlende Entsprechung geben. (siehe Erweiterte Erläuterung).
- Klickt ihr jetzt auf JA, wird dieses Spiel UNWIDERRUFLICH gelöscht und der Dialog erscheint erneut!
- Klickt ihr auf JA FÜR ALLE, werden ALLE Spiele, die nicht der DAT entsprechen UNWIDERRUFLICH gelöscht!
Hiermit kann man seine GB-Große ROM Sammlung ganz schnell auf ein Minimum reduzieren, wenn man unüberlegt an die Sache ran geht. Wir wollen ja aber eben genau das tun mit diesem Beispiel. Wir wollen, dass am Ende des Scans nur noch Spiele (ROMs) vorhanden sind, die der jeweils aktuellen DAT entsprechen.
- Klickt man auf NEIN, wird das Spiel (ROM) nicht gelöscht und der Dialog erscheint erneut!
- Klickt man auf NEIN FÜR ALLE, werden ALLE Spiele, die nicht der DAT entsprechen, trotzdem behalten.
20. Wir klicken also auf JA FÜR ALLE und lassen den Scanner weiterlaufen und warten, bis dieser Fertig ist
21. Sobald der Scanner seine Arbeit getan hat, seht ihr folgendes
Ihr könnt den Scanner nun schließen und seht dann, welche Spiele ihr besitzt (grün) und welche euch fehlen. In unserem Beispiel haben wir 518 von ROMs und uns "fehlen" 2924. Natürlich müsst ihr nicht jedes "Profil" vervollständigen.
22. Wenn wir uns jetzt mal unseren Ordner Anschauen, über den wir den Scanner gerade haben laufen lassen, sehen wir, dass alle Spiele korrekt benannt worden und als ZIP Archive neu gepackt worden sind. Es sind auch merklich weniger Dateien im Ordner vorhanden, da wir ja alle nicht passenden Spiele haben löschen lassen.
23. Klicken wir nun wieder im Hauptmenü auf "Profile", bekommen wir folgendes zu sehen
Verfahren wir nun also mit anderen Systemen genauso, haben wir irgendwann schön sortierte und korrekt benannte ROMs in verschiedenen Verzeichnissen und können mit hoher Gewissheit davon ausgehen, dass diese Spiele auch laufen werden (mit Ausnahmen natürlich)
Erweiterte Erläuterung
- Ausnahme im Virenscanner einrichten
- Dies ist wichtig, da einige Virenscanner die erhöhte Dateiaktivität als Bedrohung erkennen (Löschen, Entpacken, Verschieben, Kopieren, etc.) und somit ROMulus einfach irgendwann abschießen und die EXE Blockieren.
- zu Punkt 6.2.3.
- Ihr könnt hier Ergebnisse filtern. Bspw durchsucht ihr nicht nur "No-Intro" DATs, sondern alle Anbieter. Dann bekommt ihr EXTREM viele Ergebnisse angezeigt. Die drei Flaggen über dem Suchfenster zeigen euch, welche von euren DATs auf dem selben stand sind, wie die Online angebotenen (grün), die DATs, die ihr zwar habt, die aber veraltet sind (gelb) und die DATs, die ihr nicht habt (lila)
- zu Punkt 10
- "Ja für alle" ist hier wichtig, wenn ihr mehrere DATs auf einmal importiert. Darüber hinaus wird euch ein DIalog eingeblendet, der wie folgt aussieht
- "Ja für alle" ist hier wichtig, wenn ihr mehrere DATs auf einmal importiert. Darüber hinaus wird euch ein DIalog eingeblendet, der wie folgt aussieht
wenn ihr eine DAT importieren wollt, zu deren Profil es schon einen Eintrag gibt (bei Updates von DATs). Diesen Dialog bestätigt ihr mit "Aktualisieren", sofern ihr nicht für jede neues DAT des gleichen Systems einen neuen Eintrag machen wollt. Das empfiehlt sich, wenn überhaupt, nur für Arcade Spiele (MAME, FBA, NeoGeo)
4. zu Punkt 11 (Vorhandene Sets und Vorhanden Roms)- Arcade Spiele bestehen in der Regel aus mehreren ROMs, die in einem Archiv zusammenfasst werden. Dementsprechend kann es sein, dass es 1000 Spiele gibt, diese aber aus 15000 ROMs bestehen. Ein SET ist immer das Spiel und ROMs ist klar, oder?
Für Konsolenspiele trifft dies nicht zu und so entspricht die Anzahl der Sets auch (so gut wie immer) der Anzahl der ROMs.
-
zu Punkt 11 (Dateimodus)
- Mit Dateimodus ist gemeint, wie ihr eure Arcade Spiele aufteilt. Es gibt 3 Modi die für Konsolenspiele nicht relevant sind und auschließlich für Arcade Spiele gelten
- Not Split: Alle Clone-Sets, wenn vorhanden, werden in der Datei oder dem Verzeichnis des Vater-Sets eingeordnet (Wenn keine Clones existieren ist dies der einzig mögliche Dateimodus)
- Split/Merged: Jedes Set ist in einer eigenen Datei oder einem eigenen Verzeichnis und benötigt möglicherweise Dateien des Vater-Sets um ausgeführt zu werden
- Split/Not merged: Jedes Set ist in einer eigenen Datei oder einem eigenen Verzeichnis und hat immer alle Dateien um ausgeführt zu werden (Mehr Speicherplatz wird auf dem Datenträger belegt)
- Mit Dateimodus ist gemeint, wie ihr eure Arcade Spiele aufteilt. Es gibt 3 Modi die für Konsolenspiele nicht relevant sind und auschließlich für Arcade Spiele gelten
-
zu Punkt 11 (Pfad)
- Auf der linken Seite des Hauptfensters von ROMulus können Ordner angelegt werde (innerhalb der Datenbank), damit man sich eine bessere Übersicht verschaffen kann. Als Beispiel
- Auf der linken Seite des Hauptfensters von ROMulus können Ordner angelegt werde (innerhalb der Datenbank), damit man sich eine bessere Übersicht verschaffen kann. Als Beispiel
-
zu Punkt 19
- Gründe, warum ein Spiel nicht der DAT entspricht, sind:
- falscher Name
- falsche Dateierweiterung
- falsche MD5 Summe
- falsche SHA1 Summe
- falscher CRC32
- Spiel existiert nicht in der DAT
- Gründe, warum ein Spiel nicht der DAT entspricht, sind:
Weiterführende Links
- Deutsches recalbox Wiki
- Deutsches Mini-How-To
- NeoGeo UniBIOS
- Füge ein System BIOS hinzu
- Einfache Arcade auf der recalbox
- Fortgeschrittene Arcade auf der recalbox
- Prüfen von ROM Versionen mit clrmamepro
Schlusswort
Viel Spaß beim Sortieren, Sammeln und vor allem Spielen eurer ROMs. Ich hoffe, dass euch dieses Tutorial weiterhilft und ihr einen Upvote für mich über habt