MAME

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 19. September 2016 um 14:37 Uhr durch Kungfuman (Diskussion | Beiträge) (→‎ROMs und Legalität). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen
MAME

Logo
Basisdaten

Entwickler Nicola Salmoria und das MAME Team
Erscheinungsjahr 5. Februar 1997
Aktuelle Version 0.264[1]
(25. März 2024)
Betriebssystem plattformunabhängig
Programmiersprache C++[2][3], C[2]
Kategorie Arcade-Emulator
Lizenz BSD-Lizenz[4], GPLv2[5]
MAMEDev.org

MAME (Multiple Arcade Machine Emulator)[6] 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.

Geschichte

Nicola Salmoria fing gegen Ende 1996 damit an, verschiedene Hardware-Emulatoren zu schreiben, welche Anfang 1997 zu einem Programm zusammengefasst wurden. Die erste Version MAME 0.1 wurde am 5. Februar 1997 veröffentlicht. Mittlerweile ist das Team rund um den MAME auf über 100 Personen weltweit angewachsen.

In der Version 0.146 kam nach dem bekannten Zip Format auch die Unterstützung der 7z Datenkompression für Roms hinzu.[7][8]

In der Version 0.147 vom 17. September 2012 unterstützt MAME insgesamt 26336 ROMs, wovon 8726 eigenständige Spiele sind (die anderen Spiele sind Ableger oder Versionen in anderen Sprachen). Dabei werden nur Automaten, die auf einem programmierten Mikroprozessor beruhen, unterstützt; die in TTL-Technik konstruierten Automaten der frühen 1970er Jahre (wie etwa Pong und Breakout) werden nicht emuliert. Aufgrund der Hartnäckigkeit einiger Arcade-Fans wurden schon lange verloren geglaubte Spielautomaten wie z.B. Polyplay, Asteroids und Galaga wieder zum Leben erweckt. Aber auch die Möglichkeit, diese einmalige Periode der Automatenspiele nicht in Vergessenheit geraten zu lassen, begeistert viele Fans dieses Emulators.

Ca. 80 % aller Automaten wurden bis jetzt emuliert, die anderen 20 % sind noch in Arbeit oder auch zu neu, um überhaupt emuliert werden zu können, bzw. fallen auch unter die 3-Jahres-Klausel von MAME, die Arcade-Neuentwicklungen schonen soll. Das Problem sind bei den noch nicht emulierten Spielen meist die verschlüsselten ROMs, sowie komplizierte Steuerungen bzw. Automaten mit speziellen Funktionen wie z.B. Dual-Bildschirmen, bei denen oftmals der obere nur für die Anleitung reserviert wurde, z.B. dem NES-Playchoice-10- oder Sega-Mega-Drive-Spielautomaten (in neueren Versionen gelöst durch eine einfache Umschaltmöglichkeit im Tab-Menü).

Funktionen

MAME arbeitet wie fast alle Emulatoren, indem es die gesamte Hardware eines Automaten per Software nachahmt (emuliert) und dem Spiel so seine gewohnte Umgebung „vorgaukelt“. Schon auf einem PC mit 500 MHz Taktfrequenz laufen die meisten älteren Spiele bis 1988 flüssig. Neuere Spiele wie z.B. Tekken oder Ridge Racer laufen jedoch auch mit den neuesten CPUs nicht. Das Problem liegt an den vielen Prozessoren auf jeder Arcadeplatine, jeder einzelne Chip muss von der Computer-CPU emuliert werden; dabei wird die Arbeit bewusst nicht vom 3D-Chip der Grafikkarte übernommen, da die meisten Original-Automaten ebenfalls keinen 3D-Chip besaßen.
Um die richtige Atmosphäre zu schaffen, ist es möglich, Joypads oder andere Spieleperipherie mit dem Programm zu verwenden.

Genauigkeit

Manche Chips (z.B. Atari POKEY) werden normalerweise „zu exakt“ emuliert, daher gibt es verschiedene Einstellmöglichkeiten. Auch lässt sich die Grafik mittels Bildschirmmasken (Software) absichtlich verschlechtern, um eine Original-Retrooptik zu erhalten.

Ein weiteres Problem ist die Darstellung der exakten Originalgeschwindigkeit, insbesondere bei Spielen mit Scrolling, wie Side-Scrollern.

Bei Verwendung der voreingestellten Werte des Quelltextes von Bildwiederholfrequenz, sowie Zeilenanzahl, Austastintervalldauer (horizontal und vertikal), Taktfrequenz des Grafikprozessors u.ä., ruckeln manche Spiele auf modernen Monitoren, wenn die Originalhardware eine abweichende Frequenz, häufig zudem „krumme“ Werte verwendet. Daher muss oft ein Kompromiss gefunden werden, entweder durch Anpassung der Mame-(Bildschirm)einstellungen, wie virtueller Übertaktung von Prozessoren, „Wartefunktionen“ oder gar Überspringen von Frames, oder aber einer Änderung des Quelltextes, welches auch von alternativen und verwandten Emulatoren wie FB Alpha oder kommerziellen Umsetzungen gemacht wird. Das Ruckeln wird dann zwar reduziert, jedoch verändert dies die Spielgeschwindigkeit teils merklich, z.B. 60 statt 50 Hz.

Ferner müssen, insbesondere bei mehreren Prozessoren, auch der Ton und die Musik flüssig und bildsynchron sein. Gerade die ganz frühen Spiele, zudem häufig mit Spezialchips, Verschlüsselung oder teilweiser analogen Schaltungen ausgestattet, sind schwierig zu emulieren. Der Quelltext wird des Öfteren aktualisiert.

Industrie

Rund um MAME hat sich in den letzten Jahren eine kleine Industrie gebildet, die spezielle Automatengehäuse, originale Arcade-Joysticks und angepasste Schnittstellenhardware zur Kopplung von PC und Automat anbietet.

Verfügbarkeit

MAME ist nicht auf Windows-Systeme beschränkt. Durch seine Quelloffenheit gibt es Portierungen auf fast jedes erdenkliche Betriebssystem. Außerdem gibt es Versionen für Konsolen wie zum Beispiel die Dreamcast oder Xbox. Da der eigentliche Emulator keine eigene grafische Benutzeroberfläche besitzt, existieren zahlreiche so genannte Frontends oder Versionen (MameUI), die die Bedienung vereinfachen und die Übersicht über die Spielesammlung erleichtern. Es gibt sogar Portierungen auf Linux (Knoppix), die direkt von einer CD starten und dadurch jeden PC in eine temporäre Arcademaschine verwandeln können.

Für die Emulation von alten Spielekonsolen und Computersystemen siehe auch M.E.S.S., der auf MAME basiert. Seit dem 27. Mai 2015 (Version 0.162) ist MESS integraler Bestandteil von MAME.

Lizenz und Rechtliches

Die Emulation von Hardware wird allgemein als legal betrachtet. Die Spiele hingegen sind zumeist proprietär (Siehe auch Abandonware), weshalb MAME keine ROMs beiliegen.

Am 4. März 2016 gab das Projekt bekannt, dass „[…]90% der Files“ unter der BSD-Lizenz stehen und das Projekt als Ganzes unter der GPLv2-Lizenz verfügbar ist.[4]

Einige Abspaltungen von MAME bieten Mehrspielersitzungen über LAN oder Internet. Hier wurden jedoch gänzlich unfreie Kommunikationsprotokolle implementiert, was einen Verstoß gegen die MAME License bedeutet, da die Veröffentlichung des gesamten Quelltextes zwingend vorgeschrieben ist.

ROMs und Legalität

Die ROMs können teils käuflich erworben werden, so bieten manche Hersteller entsprechende Speicherabbilder selbst an. Auf dem Gebrauchtmarkt findet man stellenweise auch die originalen Platinen, welche ausgelesen werden können. Ferner werden auch Sammlungen von ROMs auf Datenträgern wie CDs oder DVDs im Internet angeboten, diese sind jedoch häufig nicht (ausreichend) lizenziert und verstoßen somit gegen das Urheberrecht der Hersteller, genau wie auch die zahlreichen ROM-Seiten im Internet, die sich hier jedoch auch als Hüter von Abandonware verstehen, ohne die irgendwann auch die Datenbestände bzw. ROMs der frühen Arcadespiele verloren gehen.

Bislang gab es nur drei – eher unbedeutende – Spiele, die von den jeweiligen Entwicklern für den privaten Gebrauch freigegeben- und auf der MAME-Homepage zum Download angeboten wurden. Anfang 2008 kamen elf weitere, teils bekannte Spiele vom Publisher Exidy hinzu.

Auswahl unterstützter Spiele

Siehe auch

  • Visual PinMAME – abgeleitetes Programm zur Emulation von Flipper-ROMs

Literatur

  • Hansjürg Wüthrich: Emulatoren – Wie Computersysteme und Spielkonsolen unsterblich werden, Skriptorium-Verlag 2007. ISBN 978-3-938199-08-4

Weblinks

  • MAMEDev – offizielle Seite des MAME-Projektes
  • Mame OS X – offizielle Seite für die Mac OS X Version des MAME-Projektes
  • SDLMame – offizielle Seite für Linux und andere Betriebssysteme
  • Zophars Domain – Diverse MAME Emulatoren

Einzelnachweise

  1. Release MAME 0.264. 26. März 2024.
  2. a b docs.mamedev.org. (abgerufen am 16. Dezember 2016).
  3. The mame Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 18. Juli 2018).
  4. a b MAME is now Free and Open Source Software, 4. März 2016 (englisch)
  5. MAME Legal Information (englisch)
  6. mamedev.org – offizielle Seite des MAME-Entwicklungsteams (englisch)
  7. http://mamedev.emulab.it/haze/2012/02/11/7-zip-a-dee-doo-dah/
  8. http://www.mamedev.org/releases/whatsnew_0146.txt