Was ist eine ROM-Datei?

Eine ROM-Datei ist eine digitale Kopie des Read-Only-Memory-Chips aus einer physischen Spielkassette oder Disc. Wenn Sie die Daten aus einer Kassette auslesen, enthält die resultierende Binärdatei einen Header — einen kleinen Block von Bytes am Anfang — der das Spiel und die Hardware beschreibt, für die es entwickelt wurde. Jede Konsolenfamilie verwendet ihre eigene eindeutige Header-Struktur, daher sieht eine NES-ROM auf Byte-Ebene grundlegend anders aus als eine Game Boy oder Sega Genesis ROM.

Der Header speichert normalerweise Informationen wie die Zielregion, den Memory-Mapper-Typ, ROM- und RAM-Größen sowie einen Spielidentifikationscode. Dies ermöglicht es, die ursprüngliche Konsole allein aus der Datei zu erkennen, ohne sich ausschließlich auf die Dateierweiterung zu verlassen.

Werkzeugbeschreibung

Laden Sie eine beliebige ROM-Datei hoch und das Werkzeug identifiziert sofort, zu welcher Spielkonsole sie gehört. Es liest den binären Header, gleicht ihn mit bekannten Konsolensignaturen ab und gibt den Konsolennamen zusammen mit systemspezifischen Metadaten wie Region, Spielcode, Mapper-Typ, ROM/RAM-Größen und kryptografischen Hashes (CRC32 und SHA-1) zurück. ZIP-Archive, die eine ROM enthalten, werden ebenfalls unterstützt — das Werkzeug extrahiert und analysiert automatisch die erste ROM im Archiv.

Unterstützte Konsolen

Konsole Systemschlüssel Notizen
NES / Famicom nes iNES 1.0 und NES 2.0 Header; erkennt Mapper und Sub-Mapper
Super Nintendo sfc Erkennt LoROM / HiROM, ROM-Geschwindigkeit, Co-Prozessoren (SuperFX, SA-1, DSP)
Nintendo 64 n64 Header-Analyse, Regionenerkennung, Byte-Swap-Varianten (.z64, .v64)
Game Boy / Color gb Erkennt MBC-Typ, RAM-Größe, GBC / SGB-Kompatibilität
Game Boy Advance gba Extrahiert Spiel-ID und Speichertyp (SRAM / Flash / EEPROM)
Nintendo DS nds Spielcode, Region, Unit-Code (DSi-kompatibel), Gerätekapazität
Sega Genesis / Mega Drive genesis Inländischer und ausländischer Titel, Seriennummer, Region
Sega Master System sms TMR SEGA Header, Produktcode, Region
Sega Game Gear gg Basierend auf Master System Header-Format
PC Engine / TurboGrafx-16 pce Grundlegende Identifikation
WonderSwan ws End-of-ROM Header, Spiel-ID, Modell
WonderSwan Color wsc End-of-ROM Header, Spiel-ID, Modell

Beispiele

NES-ROM-Upload-Ergebnis

Erkannte Konsole  NES / Famicom
Systemschlüssel   nes
CRC32             7d2d8d2c
SHA-1             a793e28a...
NES-Version       iNES 1.0
Mapper            4
PRG ROM           256 KB
CHR ROM           128 KB
Region            NTSC

SNES-ROM-Upload-Ergebnis

Erkannte Konsole  Super Nintendo (SNES)
Systemschlüssel   sfc
CRC32             b19ed489
ROM-Typ           LoROM
ROM-Geschwindigkeit SlowROM
RAM               8 KB

Funktionen

  • Konsolenerkennung aus Header-Bytes: Identifiziert die Konsole durch das Lesen von binären Magic Words und Header-Strukturen, nicht nur durch die Dateierweiterung
  • ZIP-Archiv-Unterstützung: Laden Sie eine .zip-Datei mit einer ROM hoch und das Werkzeug analysiert die ROM darin automatisch
  • Systemspezifische Metadaten: Zeigt je nach erkannter Konsole Mapper-Typ, Region, Spielcode, Titel, Seriennummer, ROM- und RAM-Größen an
  • Doppelte Hash-Ausgabe: Berechnet CRC32 und SHA-1 gleichzeitig, die beiden am häufigsten verwendeten Checksummen in ROM-Verifizierungsdatenbanken
  • Serverseitige Analyse: Die Verarbeitung erfolgt auf dem Server mit der roomie-Bibliothek, daher gelten keine clientseitigen JavaScript-Einschränkungen für die Dateianalyse

Anwendungsfälle

  • ROM-Bibliothek organisieren: Identifizieren Sie schnell nicht gekennzeichnete oder falsch benannte ROM-Dateien und sortieren Sie sie nach Konsole, ohne einen Emulator öffnen zu müssen
  • ROM-Dumps verifizieren: Vergleichen Sie den CRC32- oder SHA-1-Hash mit No-Intro-, Redump- oder TOSEC-Datenbanken, um zu bestätigen, dass eine ROM ein bekannter guter Dump ist
  • Emulator-Setup: Bestätigen Sie den genauen Mapper und die Region einer NES- oder SNES-ROM, bevor Sie einen Emulator konfigurieren, der diese Informationen manuell benötigt

Einschränkungen

  • Die Erkennung basiert auf dem Vorhandensein eines gültigen Headers in der Datei. Headerlose oder beschädigte ROMs werden möglicherweise nicht erkannt.
  • Pro Upload wird nur eine ROM analysiert. Bei ZIP-Archiven mit mehreren ROMs wird nur die erste übereinstimmende Datei verarbeitet.
  • Die Konsolenerkennung deckt die oben aufgeführten Systeme ab; ROM-Formate für andere Plattformen werden nicht unterstützt.