MAME

Aus RetrogamingWiki
Zur Navigation springen Zur Suche springen
MAME
Version 0.262
Aktiv Ja
Plattform Windows, Linux, macOS, FreeBSD
Emuliert Amiga, Amiga CD32, Amstrad CPC, Apple I, Apple II, Apple III, Arcade-Automat, Atari 2600, Atari 5200, Atari 7800, Atari 8-Bit-Heimcomputer, Atari Jaguar, CDTV, Commodore 128, Commodore 64, Game & Watch, Game Boy Advance, Game Boy/Game Boy Color, Neo Geo AES, Nintendo 64, Nintendo Entertainment System, PC Engine, PlayStation, PocketStation, SG-1000, Sega Game Gear, Sega Master System, Sega Mega Drive, Sega Saturn, Super Nintendo Entertainment System
Genauigkeit
Libretro Core Ja
Lizenz GNU GPLv2
Webseite Link
Source Code Link

MAME (Multiple Arcade Machine Emulator) ist ein Open-Source-Projekt mit dem Ziel, die elektronische Hardware von Videospielautomaten auf einem Computer mit Software nachzubilden und so die dazugehörenden Spiele wieder lauffähig zu machen. 2015 wurde das Projekt MESS, dass die Emulation von alten Spielekonsolen und Computersystemen zum Ziel hat, in MAME integriert.

ROM-Sets

ROM (kurz für Read-Only Memory, dt. Festwertspeicher oder Nur-Lese-Speicher) bezeichnet ein Speicherabbild (dump) der Speicherchips, die in einem Arcade-Automaten oder einer Spiele-Cartridge verbaut sind. Bei Spielekonsolen werden die Daten üblicherweise in einer einzelnen Datei zusammengefasst. Da Arcade-Automaten in der Regel komplexer aufgebaut sind, werden Daten von verschiedenen Speicherchips benötigt. So erhält man z.B. durch die Zusammenfassung aller Dateien eines Puckman-Automaten (japanische Originalversion von Pac-Man) ein ROM-Set für das Spiel Puckman (meist im .ZIP-Format).

Von vielen Spielen bzw. Automaten gibt es unterschiedliche Versionen (revision), die häufig aber zum Großteil identisch mit der jeweiligen Vorgängerversion sind. Um Speicherplatz zu sparen, nutzt MAME daher ein sogenanntes parent/clone-System für die Speicherung der ROM-Sets. Dabei wird für ein Set i.d.R. die aktuellste World-Revision als Parent zugrunde gelegt. Alle Sets, die überwiegend die gleichen Chips nutzen (z.B. weitere Revisionen des Automaten), enthalten als Clone lediglich die gegenüber dem Parent-Set geänderten Daten.

Der Versuch ein Clone-Set (z.B. die USA-Version von Pac-Man) ohne das dazugehörige Parent-Set (PUCKMAN.ZIP) auszuführen führt in diesem Fall üblicherweise zu einer Fehlermeldung, da Spieldaten fehlen.

Aufgrund dieses parent/clone-Systems gibt es drei wesentliche Varianten von ROM-Sets:

  • Non-merged Set
  • Split Set
  • Merged Set

Non-merged Set

In einem "Non-merged Set" sind alle Daten in einer ZIP-Datei enthalten, die für das Ausführen des Spiel benötigt werden (im oben genannten Beispiel also die Puckman-Parent-Daten sowie die USA Pac-Man-Clone-Daten). Wenn viele ähnliche Versionen eines Spiels genutzt werden, führt dies eine vergleichsweise ineffizienten Speichernutzung (da die Parent-Daten so mehrfach abgelegt werden). Vorteilhaft ist diese Form, wenn nur wenige Sets genutzt werden, die eigenständig lauffähig sein sollen.

Split Set

In einem Split Set enthält das Parent-Set (Puckman) alle benötigten Daten und die Clone-Sets (USA Pac-Man) ausschließlich die gegenüber dem Parent geänderten Daten. Die Clone-Sets sind also nicht eigenständig lauffähig. Der Speicherbedarf wird dadurch gegenüber einem Non-merged Set reduziert.

Merged Set

Bei einem Merged Set sind der Parent (Puckman) und ein oder mehrere Clones (z.B. USA Pac-Man und weitere offizielle Versionen oder Bootlegs) in einer Datei (PUCKMAN.ZIP) zusammengefasst. Diese Variante hat, bei gleicher Anzahl an Parent- und Clone-Sets, den geringsten Speicherbedarf der drei Varianten.

ROM-Set-Versionen

Aufgrund der laufenden Anpassungen und Optimierungen, die an MAME vorgenommen werden, sind ältere ROM-Sets häufig nur eingeschränkt mit aktuelleren Versionen kompatibel. Teilweise können die Spiele mit aktuellen Versionen dann nicht mehr ausgeführt werden. Man sollte also immer darauf achten, dass das die Version des ROM-Sets auf die jeweilige MAME-Version abgestimmt ist.

CHD

Einige Spiele nutzen neben den vergleichsweise kleinen Chips weitere Speichermedien (z.B. Festplatten, CD-ROMs, DVDs oder LaserDiscs). Für diese Daten wurde ein neues Dateiformat, CHD (kurz für Compressed Hunks of Data), entwickelt, das auf die Speicherung von größeren Datenmengen ausgerichtet ist. Die entsprechenden Spiele benötigen die passenden CHD-Dateien, um lauffähig zu sein.