MAME

MAME (ursprünglich eine Phrase von Multiple Gallery Device Emulator) ist ein völlig kostenloser und auch Open-Source-Emulator, der entwickelt wurde, um die Hardware von Arcade-Videospielsystemen in Softwareprogrammen auf modernen Computern und anderen Plattformen neu zu erstellen. Ziel ist es, die PC-Spielhistorie zu schützen, indem verhindert wird, dass klassische Videospiele verloren gehen oder vergessen werden. Dies geschieht, indem das Innenleben der nachgeahmten Galeriemaschinen nachgebildet wird. Die Fähigkeit, die Spiele tatsächlich zu spielen, wird als "ein guter negativer Effekt" betrachtet. Joystiq hat MAME tatsächlich als eine Anwendung aufgelistet, die jeder Windows- und Mac-Spieler haben sollte.
Die erste öffentliche MAME-Veröffentlichung wurde von Nicola Salmoria am 5. Februar 1997 veröffentlicht. Derzeit werden über 7.000 Spezialspiele sowie 10.000 aktuelle ROM-Bildersätze unterstützt, obwohl nicht alle Videospiele spielbar sind. MESS, ein Emulator für viele Videospielkonsolen sowie Computersystemsysteme, basierend auf dem MAME-Kern, wurde 2015 direkt in MAME integriert.

Hintergrund sowie Zusammenfassung

Der MAME-Job wurde vom italienischen Programmierer Nicola Salmoria begonnen. Es begann als eine Aufgabe namens Multi-Pac, die Videospiele im Pac-Man-Haushalt erhalten sollte. Der Name wurde jedoch geändert, da noch mehr Spiele zu seiner Struktur beigetragen wurden. Die allererste MAME-Variante wurde 1996 veröffentlicht. Im April 1997 trat Salmoria wegen seiner landesweiten Lösungsbereitschaft zurück und übergab die Aufgabe für ein halbes Jahr an den italienischen Landsmann Mirko Buffoni. Im Mai 2003 übernahm David Haywood die Arbeit des Aufgabenkoordinators. und von April 2005 bis April 2011 wurde das Projekt von Aaron Giles bearbeitet. Angelo Salese trat als neuer Koordinator auf. Im Jahr 2012 übernahm Miodrag Milanovic. Die Aufgabe wird von Hunderten von Entwicklern auf der ganzen Welt und auch von Hunderten von externen Mitwirkenden unterstützt.
Ursprünglich wurde MAME exklusiv für MS-DOS erstellt, bald jedoch auf Unix-ähnliche Systeme (X / MAME), Macintosh (MacMAME und später auch MAME OS X) und Windows (MAME32) portiert. Seit 24 Might 2001 mit Version 0.37 b15 wurde MAME hauptsächlich auf der Windows-Plattform weiterentwickelt, und die meisten anderen Systeme werden mit dem SDLMAME-Projekt unterstützt, das 2006 in den Hauptentwicklungsquellbaum integriert wurde. MAME war es tatsächlich ebenfalls portiert auf andere Computersysteme, Videospielkonsolen, Mobiltelefone sowie persönliche Organisatoren sowie an einem Punkt sogar auf digitale Kameras. Im Jahr 2012 portierte Google MAME auf Native Customer, wodurch MAME in Chrome ausgeführt werden kann.
Bedeutende Starts von MAME erfolgen ungefähr in einem Monat. Auf der offiziellen Internetseite des Wachstumsteams werden ausführbare Windows-Dateien in 32-Bit- und 64-Bit-Form zusammen mit dem gesamten Quellcode gestartet. Kleinere, inkrementelle "u" -Versionen (für Updates) wurden regelmäßig gestartet (bis Version 0.149 u1) ), da sich die Ressource von einer der neuesten wichtigen Versionen unterscheidet, um den Code zwischen den Entwicklern synchron zu halten. Der MAME-Ressourcencode wird in einer öffentlichen GitHub-Datenbank erstellt. Auf diese Weise können sowohl Benutzer mit den erforderlichen Kenntnissen als auch Geräte die aktuellste Version des Codes erstellen und Verbesserungen in Form von Pull-Anforderungen beitragen. Historische Variationszahlen von 0,32 sowie 0,38 mit einschließlich 0,52 existieren nicht; Ersteres wurde aufgrund der vergleichbaren Benennung der MAME32-Version (die selbst aufgrund der Verlagerung in 64-Bit-Builds in MAMEUI umbenannt wurde) übersehen, während die letzten Nummern aufgrund der unzähligen Releases im Beta-Zyklus von 0,37 ( Diese Variationszahlen waren seitdem tatsächlich signifikant neben ihren entsprechenden Beta-Starts von 0,37 auf der Haupt-MAMEdev-Website.
Das Design von MAME wurde im Laufe der Jahre erheblich verbessert. In den ersten 6 Monaten des Auftrags wurde MAME um Unterstützung für Raster- und Vektorbildschirme sowie um zahlreiche CPUs und Soundchips erweitert. Ein flexibles Zeitgebersystem für die Synchronisation zwischen mehreren nachgeahmten CPU-Kernen wurde ausgeführt, und auch ROM-Images wurden gemäß ihrem CRC32-Hash in die ZIP-Daten geladen, in denen sie gespeichert waren. MAME hat tatsächlich das Reverse Engineering vieler von ihnen vorangetrieben undokumentierte Systemarchitekturen, verschiedene CPUs (wie die kundenspezifische Konami-CPU mit M6809-Derivat und brandneuen Richtlinien) sowie Soundchips (zum Beispiel die Yamaha FM-Soundchips) und MAME-Programmierer haben zum Reverse Engineering vieler exklusiver Systeme beigetragen Sicherheitsalgorithmen, die in Arcade-Spielen verwendet werden. Beispiele hierfür sind Neo Geo, CP System II, CP System III und viele andere.
Die Popularität von MAME hat sich inzwischen zum Mainstream durchgesetzt, mit Liebhabern, die ihre eigenen Galeriespielschränke bauen, um die alten Spiele zu erleben, und mit Firmen, die illegale abgeleitete Werke von MAME produzieren, die in Spielen eingerichtet werden sollen. Schränke können entweder aus dem ersten Platz oder durch Zerlegen und Anpassen eines echten Arcade-Spielschranks gebaut werden, der sofort mit der realen Ausrüstung im Inneren verwendet wurde. Von klassischen Spielspielen motivierte Schränke können ebenfalls gekauft und zusammengebaut werden (mit optionalem und vorinstalliertem MAME).
Obwohl MAME eine grundlegende Benutzeroberfläche enthält, erfordert die Verwendung von MAME in Spielschränken für Galerien sowie in Heimkinos spezielle Launcher-Anwendungen, sogenannte Frontends, mit erweiterten Benutzeroberflächen. Frontends bieten unterschiedliche Personalisierungsstufen – so können Bilder der Schränke, Hintergründe der Videospiele sowie Ideen zur genauen Spielweise und sogar Videoclips des Videospiels angezeigt oder Einstellungen des Videospiels angezogen werden. < br> Die in MAME enthaltenen Informationen können kostenlos wiederverwendet werden, und es wurde auch anerkannt, dass Unternehmen MAME verwenden, wenn sie ihre alten Klassiker auf modernen Systemen neu erstellen. Einige sind sogar so weit gegangen, MAME-Designer zu beschäftigen, um Emulatoren für ihre alten Eigenschaften zu entwickeln. Ein Beispiel hierfür ist das Taito Legends-Paket, das ROMs enthält, die in ausgewählten Versionen von MAME lesbar sind.
Angesichts des Jahres 2012 wird MAME von dem damaligen MESS-Aufgabenleiter Miodrag Milanović behalten.
Am 27. Mai 2015 (0.162) wurde die Videospielkonsole und der Computersystememulator MESS in MAME integriert (daher ist das MESS-Kundenhandbuch immer noch eine der wichtigsten Gebrauchsanweisungen für Nicht-Arcade-Teile von MAME).
Im Mai 2015 wurde bekannt, dass die Programmierer von MAME beabsichtigten, die Softwareanwendung unter einer viel üblicheren kostenlosen sowie Open-Source-Lizenz neu zu lizenzieren, weg von der ursprünglichen MAME-Lizenz. MAME-Programmierer Miodrag Milanovic stellte klar, dass die Modifikation mehr Designer-Leidenschaft für das Projekt wecken, es den Spielemachern ermöglichen soll, MAME zu zerstreuen, um ihre eigenen Spiele zu replizieren, und die Softwareanwendung zu einem "Herausfindungsgerät für Programmierer" machen soll Förderbretter ". Der Übergang der Lizenzierung von MAME zu den BSD / GPL-Lizenzen wurde im März 2016 abgeschlossen. Mit der Änderung der Genehmigung ist ein Großteil des Ressourcencodes von MAME (90% +) unter einem BSD-Zertifikat mit drei Klauseln verfügbar, und auch das gesamte Projekt befindet sich unter der GNU Public Permit Variation 2 oder höher.
Am 24. Februar 2016 (0.171) installierte MAME das MEWUI-Frontend (und auch der Entwickler trat der Gruppe bei) und bot MAME eine anpassbare sowie eine voll funktionsfähigere Benutzeroberfläche.

Stil

Der MAME-Kern koordiniert die Emulation mehrerer Elemente gleichzeitig. Diese Elemente geben das Verhalten der in den Originalausrüstungen der Galerie vorhandenen Geräte wieder. MAME kann viele verschiedene Zentraleinheiten (CPUs) sowie verbundene Hardware replizieren. Diese Komponenten sind virtualisiert, sodass MAME als Softwareanwendungsebene zwischen dem ursprünglichen Programm des Spiels und dem System fungiert, auf dem MAME ausgeführt wird. MAME unterstützt ungefähre Bildschirmauflösungen, erfrischende Preise sowie Show-Setups. Es werden auch mehrere nachgeahmte Monitore unterstützt, die beispielsweise von Darius benötigt werden.
Private Galeriesysteme werden von Fahrzeugführern spezifiziert, die den Typ von C-Präprozessormakros verwenden. Diese Fahrzeugführer definieren die einzelnen zu emulierenden Elemente und auch, wie sie miteinander kommunizieren. Während MAME ursprünglich in C geschrieben wurde, wurde durch die Notwendigkeit von artikelorientierten Shows die Wachstumsgruppe erstellt, um mit dem Kompilieren des gesamten Codes als C ++ für MAME 0.136 zu beginnen und dabei die zusätzlichen Attribute dieser Sprache optimal zu nutzen.
Obwohl ein großer Teil der CPU-Emulationskerne Expository ist, unterstützt MAME ebenfalls eine lebendige Neukompilierung über eine Zwischensprache namens Universal Machine Language (UML), um die Emulationsgeschwindigkeit zu verbessern. Unterstützte Back-End-Ziele sind sowohl x86 als auch x64. Ein C-Backend ist ebenfalls leicht verfügbar, um die Überprüfung der Richtigkeit weiter zu erleichtern. Auf diese Weise nachgeahmte CPUs sind SH-2, MIPS R3000 und auch PowerPC.

Spieldaten

Der anfängliche Programmcode, Grafiken und auch Audioinformationen müssen vorhanden sein, um sicherzustellen, dass das Spiel emuliert werden kann. In vielen Arcade-Geräten werden die Daten in Nur-Lese-Speicherchips (ROMs) gespeichert, obwohl auch andere Tools wie Kassetten, Disketten, Festplatten, Laserdiscs sowie CDs verwendet werden. Die Komponenten vieler dieser Geräte können in einem als "Dumping" bezeichneten Prozess auf Computerdaten dupliziert werden. Die resultierenden Dateien werden normalerweise allgemein als ROM-Images oder ROMs bezeichnet, unabhängig von der Art des Speichers, aus dem sie stammen. Ein Videospiel enthält normalerweise zahlreiche ROM- und BUDDY-Bilder. Diese werden gemeinsam in einer einzelnen ZIP-Datei gespeichert und bilden einen ROM-Satz. Zusätzlich zu dem ROM-Set "Mütter und Papa" (normalerweise als eine der neuesten "Welt" -Versionen des Videospiels ausgewählt) können Spiele ROM-Sets "klonen" mit verschiedenen Programmcodes und verschiedenen Sprachnachrichten für verschiedene Märkte enthalten usw. Zum Beispiel wird Road Fighter II Turbo als eine Variante der Road Fighter II Champion Version betrachtet. Systemplatinen wie das Neo Geo, deren ROMs von zahlreichen Videospielen gemeinsam genutzt werden, erfordern, dass die ROMs in "BIOS" -ROM-Sets gespeichert und entsprechend aufgerufen werden.
Festplatten, CDs und Laserdiscs werden in einem MAME-spezifischen Format namens CHD (Compressed Hunks of Data) gespeichert. Einige Spielautomaten verwenden analoge Hardware wie Laserdiscs, um Audio- / Videodaten wie Soundtracks und auch Kinematiken zu speichern und wiederzugeben. Diese Informationen müssen erfasst und direkt in elektronische Dateien eingetragen werden, die von MAME ausgecheckt werden können. MAME unterstützt nicht die Verwendung von externen analogen Geräten, die (zusätzlich zu demselben Lautsprecher sowie Audio-Lautsprechergehäusen) für eine 100% originalgetreue Reproduktion des Galerieerlebnisses sicherlich erforderlich wären. Eine Reihe von Videospielen verwenden Audio-Chips, die noch nicht effektiv nachgeahmt wurden. Diese Videospiele benötigen Soundbeispiele im WAV-Dokumentformat für die Audioemulation. MAME unterstützt außerdem Grafikdateien im PNG-Layout für Lünetten sowie Overlay-Grafiken. Wenn Sie unsere Website  https://roms-herunterladen.com/roms/mame-037b11 besuchen, können Sie jedes Spiel kostenlos auf Ihr Gerät herunterladen

Erste MAME-Lizenz

MAME wurde früher unter einer maßgeschneiderten selbstgeschriebenen Copyleft-Lizenz vertrieben, die als "MAME-Genehmigung" oder "MAME-ähnliche Lizenz" bezeichnet wurde und ebenfalls von verschiedenen anderen Aufgaben übernommen wurde, z. Visueller Flipper. Dieses Zertifikat garantiert die Verfügbarkeit des Quellcodes des zertifizierten Programms, während die Weiterverteilung des Programms bei industriellen Aufgaben verboten ist. Aufgrund dieser Bestimmung ist die Lizenz sowohl für die Open Source-Bedeutung des OSI als auch für die freie Software des FSF unangemessen und wird daher auch nicht als Open Resource bzw. kostenlose Softwareprogrammgenehmigung angesehen. Die nichtkommerzielle Bedingung wurde geschaffen, um zu verhindern, dass Arcade-Fahrer MAME-Schränke installieren und von den Jobs der ursprünglichen Hersteller der Videospiele profitieren. Die Mehrdeutigkeit der Bedeutung "Geschäft" führt zu rechtmäßigen Problemen mit der Genehmigung.
Angesichts der Tatsache, dass MAME im März 2016 mit der Variation 0.172 durch Doppellizenzierung auf typische kostenlose Softwareprogrammlizenzen, das neue BSD-Zertifikat sowie die GNU GPLv2 (oder höher) umgestellt wurde.