Thema:
Guide: Wartungsarmes Arcade-Setup inkl. Jotego CPS1 flat
Autor: JPS
Datum:09.05.20 11:43
Antwort auf:MiSTer: verschiedenste Konsolen auf einem FPGA von caipirol

Nachdem der Arcade-Bereich etwas komplizierter ist, habe ich einen Guide zusammengestellt, der ein wartungsarmes Setup nach aktuellen Best Practices ermöglicht:

Grundlegendes:

Arcade-Spiele bestehen bei MiSTer aus folgenden drei Komponenten:

1. RBF-Datei

Diese enthält die FPGA-Implementierung der Arcade-Hardware (Core).

2. ROM-Dateien

Diese enthalten den Inhalt der ROM-Chips (grob gesagt also das eigentliche Spiel) und werden in der Regel als ZIP-Datei aus einem (HB)MAME-ROM-Set bereitgestellt.

3. MRA-Dateien

Diese Text-Dateien stellen die notwendigen Bezüge zwischen RBF- und ROM-Dateien her und enthalten darüber hinaus diverse Meta-Informationen

Für einen Core (RBF-Datei) können mehrere MRA-Dateien existieren, die z.B. auf andere ROMs verweisen und so verschiedene Revisionen und Bootlegs abbilden können. Auch "Hacks" können über MRA-Dateien realisiert werden, z.B. das Überspringen des ROM-Checks.

Verzeichnis-Struktur

Folgende Verzeichnis-Struktur entspricht den aktuellen Best Practices:

/media/fat/_Arcade -> MRA-Dateien für Standard Arcade-Cores
/media/fat/_Arcade/_alternatives -> MRA-Dateien für Standard Arcade-Cores (alt. Versionen)
/media/fat/_Arcade/_CPS0 -> MRA-Dateien für "CPS0"-Cores von Jotego
/media/fat/_Arcade/_CPS1 -> MRA-Dateien für CPS1-Cores von Jotego
/media/fat/_Arcade/_Double Dragon -> MRA-Dateien für Double Dragon 1+2 Cores von Jotego
/media/fat/_Arcade/cores -> alle Cores (RBF-Dateien)
/media/fat/games/mame -> MAME-ROMs
/media/fat/games/hbmame -> HBMAME-ROMs

"/media/fat" steht für das Hauptverzeichnis der SD-Karte.

Die Ordner "mame" und "hbmame" dürfen nur im "games"-Verzeichnis existieren - veraltete Speicherorte für die (HB)MAME-ROMs (z.B. im "_Arcade"-Verzeichnis) müssen daher entfernt werden.

Die Ordner "games/mame" und "games/hbmame" können problemlos auf eine USB-Festplatte ausgelagert werden. Die restlichen Ordner würde ich nicht auf USB auslagern, da hierfür zu viele manuelle Anpassungen nötig sind und ein größeres Risiko besteht, dass künftige Updates etwas zerschießen.

Die Ordner "_CPS0", "_CPS1" und "_Double Dragon" werden für die MRA-Dateien der Arcade-Releases von Jotego genutzt. Sie können beliebig benannt werden oder in einen gemeinsamen Ordner (z.B. "_JT") zusammengefasst werden.

Obwohl es grundsätzlich funktioniert, würde ich nicht empfehlen die Jotego-MRA-Dateien direkt in das "_Arcade"-Hauptverzeichnis zu kopieren, da sie im Gegensatz zu den Standard-Arcade-Cores regelmäßig manuell verwaltet werden müssen.

Einmalige Vorbereitung:

1. Ordnerstruktur von oben schaffen und überflüssige Duplikate dieser Ordner an anderen Speicherorten löschen.

2. Offiziellen Updater für Jotego-Cores herunterladen und in das Verzeichnis "/media/fat/Scripts" auf der SD-Karte kopieren:

[https://1fichier.com/?0r4wjbof52a2lgrsvgms] (einfacher Download - Stand 2020-05-09)
oder [https://github.com/jotego/jtbin/tree/master/mister/update] (Original-Quelle)

Es wird nur "update_jtcores.sh" benötigt.

3. MAME-Getter-Scripts herunterladen und die vier im ZIP-File enthaltenen sh+ini-Dateien in das Verzeichnis "/media/fat/Scripts" auf der SD-Karte kopieren:

[https://1fichier.com/?5ydtel8bh4deuw3kxpep] (Version für ROM-Ordner auf SD-Karte)
oder [https://1fichier.com/?sg2njbdbt9ln7dsdwy1n] (Version für ROM-Ordner auf USB-Medien)
oder [https://github.com/MAME-GETTER/MiSTer_MAME_SCRIPTS] (Original-Quelle / ohne INI-Dateien!)

4. Im Verzeichnis "/media/fat/Scripts" auf der SD-Karte die Datei "update.ini" bearbeiten und die Zeile DOWNLOAD_NEW_CORES="false" auf DOWNLOAD_NEW_CORES="true" ändern. Zum Bearbeiten der MiSTer-Dateien immer einen vernünftigen Editor wie z.B. Notepad++ (kostenlos) und nicht Windows-Notepad verwenden.

Regelmäßige Updates:

Wenn alles eingerichtet ist, könnt Ihr über folgende Schritte alles auf einem aktuellen Stand halten:

1. Jotego Arcade-Releases - außer CPS1

Gewünschte MRA-Dateien von Jotego herunterladen und in die Ordner "/media/fat/_Arcade/_CPS0" und "/media/fat/_Arcade/_Double Dragon" kopieren:

[https://github.com/jotego/jtbin/tree/master/mra]
(Achtung: Enthält teilweise veraltete Duplikate, daher auf Dateinamen und Dateidatum achten.)

Wenn Ihr auch die alternativen Versionen verwenden und in einem Unterordner speichern möchtet, muss der Unterordner mit einem Unterstrich beginnen (z.B. "_alt").

Nachdem dieser Schritt einmal durchgeführt wurde, bei künftigen Updates einfach nach dem Dateidatum gehen und nur die aktualisierten MRA-Dateien ersetzten und neue hinzufügen.

2. Jotego CPS1-Beta-Releases (optional)

Die hierfür benötigten Dateien erhaltet Ihr nur als Patreon-Supporter von Jotego, ab der $3-Stufe: [https://www.patreon.com/topapate/]

Die RBF-Dateien aus den Patreon-Links in den Ordner "/media/fat/_Arcade/cores" kopieren.

Die MRA-Dateien aus den Patreon-Links in den Ordner "/media/fat/_Arcade/_CPS1" kopieren.

Dieser Schritt entfällt sobald die CPS1 Cores für die Öffentlichkeit zur Verfügung stehen.

3. Update-Scripts

Über die MiSTer-Oberfläche folgende vier Scripts nacheinander ausführen:

update - das Standard-Update Script von MiSTer, das unter anderem die Standard-Arcade-Cores aktuell hält

update_jtcores - das offizielle Update-Script von Jotego, das seine Arcade-Cores aktuell hält

update_mame-getter - lädt alle benötigten MAME-ROMs herunter

update_hbmame-geter - lädt alle benötigten HBMAME-ROMs herunter

Wenn alles eingerichtet ist, müsst Ihr also künftig noch die neuen MRA-Dateien bereitstellen und die vier Update-Scripts starten. Der Rest (Cores + ROMs) geht dann automatisch über die Scripts (Ausnahme CPS1-Beta Cores).

Die "update_(hb)mame_geter"-Scripts werten die MRA-Dateien aus und laden gezielt die benötigten ROMs automatisch herunter.

Gelegentlich kann man aufräumen und die Cores (RBF-Dateien), MRA-Dateien und ROM-Dateien (Inhalt der Ordner "mame" und "hbmame") komplett löschen und dann durch Herunterladen aller Jotego-MTA-Dateien, CPS1-Core-Dateien und durch das Ausführen der vier Scripts komplett neu aufbauen.

Im Gegensatz zu anderen Lösungen und Scripts basiert dieser Guide und die darin genutzten Scripts auf den aktuellsten Empfehlungen bzgl. der Speicherorte und den Original-Quellen, so dass man in der Regel (außer bei größeren Umstellungen) nicht auf Updates durch Script-Entwickler angewiesen ist.


< antworten >