Changes

Jump to navigation Jump to search

MAME

10,984 bytes added, 11:48, 14 March 2023
Downloads
|logo = Logo-mame.png
|logowidth = 254
|version = {{MAMEVerVersion|MAME}}
|active = Yes
|platform = Multi-platform
|source = [https://github.com/mamedev/mame GitHub]
}}
'''[[wikipedia:MAME|MAME]]''' (originally an acronym for '''<u>M</u>ultiple <u>A</u>rcade <u>M</u>achine <u>E</u>mulator''') is a multi-platform, open-source, [[Multi-system emulators|multi-system emulator]] written in C++. The philosophy behind the project is to recreate the workings of machines through emulation, and thus the ability to actually play the games is "a nice side effect". MAME is incredibly large, [[MAME compatibility list|supporting thousands of machines and ROM sets]], though what is supported is not what's playable; your mileage may vary. In the event you don't like MAME's own interface, there are many alternative front-ends available.
'''[[wikipedia:MAME|MAME]]''' (originally an acronym for '''<u>M</u>ultiple <u>A</u>rcade <u>M</u>achine <u>E</u>mulator''') is a multi-platform, open-source, [[Multi-system emulators|multi-system emulator]] written in C++. The philosophy behind the project is to focus on recreating the workings of various machines through emulation, with the software's ability to actually play console games being described as "a nice side effect". MAME is incredibly large, [[MAME compatibility list|supporting thousands of machines and ROM sets]], though what is supported is not what's playable; your mileage may vary. In the event you don't like MAME's own interface, there are [[Frontends#MAME|many alternative frontends]] available. Much like the name says, MAME was supposed to be for arcade machines like Pac-Man back when it was released in 1997. A Over time, MAME has incorporated similar projects out of a necessity to keep development active and prevent duplication of work (as some arcade machines often shared hardware with consoles to ease development of games); the first project called to be merged was [[MESS]] was made to do essentially at the same thing end of May 2015 starting with version 0.162 and it functioned almost exactly like MAME but for home consoles and other esoteric devices that never got emulatedelsewhere. MAME also had a policy against emulating gambling machines, but it that decision has since been merged into reversed and the project that aimed to get them working, <abbr title="Arcade Gambling Extensions for MAME by the end of May 2015 in version 0.162">AGEMAME</abbr>, and now it supports ''a whole lot more'' than arcade machineshas also been merged.
==Downloads==
|colspan="3"|<hr/>
|-
|align=center|{{Icon|Lin|Mac|BSD|RiscOS|AmigaOS}}
|[https://wiki.mamedev.org/index.php/SDL_Supported_Platforms SDL Supported Platforms]
|-
|align=center|{{Icon|Win|Lin|Mac}}
|<abbr title="Latest development version">git artifacts</abbr>: [https://nightly.link/mamedev/mame/workflows/ci-windows/master CI-Windows] [https://nightly.link/mamedev/mame/workflows/ci-linux/master CI-Linux] [https://nightly.link/mamedev/mame/workflows/ci-macos/master CI-Macos]</br>
|-
|align=center|{{Icon|Win-big}}
==Overview==
MAME was first put out is the prime example of a jack of all trades; it can technically emulate consoles like the [[PlayStation emulators|PlayStation]] and [[Nintendo 64 emulators|Nintendo 64]], but for those consoles you're better off going with our [[Recommended Emulators|recommended emulators]] as they may be more performant or more compatible than MAME's own drivers. The project and its team focuses on February 5[[Emulation Accuracy|accuracy]] (preferably cycle-accuracy) and preservation, 1997 by Nicola Salmoria as which often puts usability at a Pac-Man emulatormuch lower priority for end users, so don't expect support for more recent boards like Atomiswave. For some systems, the developers may not have everything implemented. The native interface will tell you about the emulation status of the chosen driver,<ref name="worldofstuart">and what components are considered lacking. Read this official [httphttps://worldofstuartwiki.excellentcontentmamedev.comorg/mameoverindex.htm php/FAQ:Performance FAQ page] for the reasons on why it is so hard to run many emulated systems usably on an user's computer or device that supports MAME OVER] , its derivatives and/or cores inside frontends or certain kinds of software (0eg.99[[RetroArch]])</ref><ref name="History">{{cite web|url=https://www.youtubeIt also has helpful tips to try to get better performance from some systems.com/watch?v=VgJF18Pm7MA|title=A Brief History of Emulation:  The MAME developers do not recommend using MAME|publisher=Youtube|accessdate=2018-09-14|date=2017-12-02}}<through libretro/ref> but before he could do any more work RetroArch unless it is the only option (such as on the projectAndroid), he handed as it over is an unofficial port with poor UI integration and additional bugs compared to Mirko Buffoni in April 1997 after requiring mainline MAME. Those who still wish to do National Service in use the Italian armylibretro core should ensure they are using a recent core instead of one based on a very old version (MAME 2003 etc.), unless older versions are necessary for performance reasons.<ref name =="worldofstuart"/> Since then=Compatibility===We have an outdated compatibility list [[MAME compatibility list|here]]. Although, it focuses on arcade machines, even as early as 2003and popular computer & console platforms, it is worth updating. It is highly recommended to instead check the emulator has become very extensivehome page on this wiki for any listed computer, with console or other gaming device that may have emulation in MAME. You can see the majority upcoming version's changelog [http://mameinfo.mameworld.info/ here]. Other compatibility lists: * [http://unmamed.mameworld.info/ List of arcade system boards from the 1970games that DON's, 1980T work] Last updated February 2014. Don's t expect the most recent games (like [[Sega NAOMI and early 1990's supportedvariants|Sega Naomi]] ones) to run at full speed, MAME is very resource intensive.* [http://nonmame.retrogames.com/ NonMAME] ([http://web.archive.org/web/20150306213522/http://consume. On February 2016 in version 0retrogames.171, com/ 2015 Mirror]) This is a new GUI was integrated into list of arcade systems that currently are not emulated by MAME which allowed users to launch games in it without the need or are emulated better by other emulators. This list has been criticized by MAMEDevs for a thirdbeing overly biased towards RetroArch.* [https://wiki.mamedev.org/index.php/Non-Working_Drivers Non-party GUI applicationWorking Drivers] under the MAMEDev Wiki.
However... don't expect support for more recent boards like Atomiswave; the project and its team focuses on MAME can currently [[Emulation Accuracy|accuracy]] (preferably cycle-accuracy) and preservation, which often puts usability at a much lower priority for end usershttps://docs. The program is also '''very strict''' about what components of a ROM dump it needs to even function, and it may tell you if something is wrong with the files (imamedev.eorg/initialsetup/mameintro. a failed checksum); once developers know more about a system, they'll often have to dump more components like ROMs and BIOSes if necessary, and obtaining newer dumps html# emulate over 32000 individual systems from the boards isn't exactly the easiest thing in the world for users who only have traditional desktops, and the same goes for anyone with the actual arcade boards. Something as popular as Pac-Man will probably never need newer dumps beyond the current ones because it's been continually researched, and the dumps have been pretty widespread, but other machines you've probably only seen once at an arcade will probably need new dumps for a reason. Only ROM dumps with all the newest information will work in new versions of MAME. Even then, programmers may not have everything implemented. The native interface will tell you about the emulation status of the chosen romset, and whether the one you're using is even emulated at the current timelast 5 decades].
Also see ===Categories===The MAME emulator covers a wide assortment of different types of emulated systems including, but not necessarily limited to:<div class="wikitable mw-collapsible mw-collapsed">{|width="100%"|- valign="top"|- '''Arcade''' ''(See Main page, & Compatibility list above)'':Where it all started, and by far the most popular and widely utilized purpose of MAME.:These arcade cabinets usually contain video & audio outputs.:{Info needed) Perhaps Redemption Games, aka Medal games, should be in a separate category (They are usually arcade-style cabinets with electro-mechanical parts. Some may even use the incomplete same PCBs as normal arcade cabs.)- '''Board Game (Electronic)''':This sort of game in real life is typically played on a tabletop.:This category especially covers chess game systems from the 20th century.- '''Calculator''':Is not a pocket computer.:Does not have additional functions as portable organizer, etc.- '''Casino''':A casino games is an arcade-type game, but primary purpose is for gambling.:A typical casino game likely does not have electromechanical parts.:Fruit machines can be included in this category, probably.- '''Compilation''':Example: Original game was an Arcade game. Game was released as a port or part of a game compilation for PC or a Game Console.:It is unclear if files of such games from these compilations (That may have a self-contained MAME build) can be ported to a PC/console and booted with the user's own MAME build (Info needed).- '''Computer''' ''(See Main page, [[List of computers]], & [[Desk-Size_Computers_/_Supercomputers_/_Mainframes|Huge Computers]])'':Typically requires loading external software (games or applications) from a MAME Software List.:Hardware in real life typically requires external AC power.:Not a handheld computer.:Not a game console.- '''EM Reels''':An EM Reels game is an arcade-type game, but primary purpose is gambling.:Game includes electromechanical external artwork required to properly emulate the game.- '''Game Console''' ''(See Main page)'':Typically requires loading external software for games from a MAME compatibility listSoftware List.:Hardware in real life is required to be attached to an external display.:Hardware in real life requires an external AC power.:Hardware in real life requires an external controller plugged into the main console.:Not a computer.|- '''Handheld Computer''' ''(See [[Portable Computers (Miscellaneous)|Portable Computers]] internally here)'':Primary purpose of hardware is a portable computer.:Can run multiple software applications, compared to a typical calculator.:Not a laptop computer.- '''Handheld Console''' ''(See Main page)'':Primary purpose of hardware is a game console.:Typically requires loading external software for games from a MAME Software List. And :Hardware in real life completely portable, with a self-contained display, battery, and controls.- '''Handheld Game''':Primary purpose of hardware is a single portable game.:All game software is self-contained within the latest physical unit.:Does not utilize MAME Software Lists.:Hardware inreal life is completely portable, with a self-progress contained display, battery, and controls.- '''[[httpHBMAME]]'''://mameinfoGame is a homebrew or hack variant of another Arcade or Handheld Console game.mameworld:Game is not emulated in regular MAME; only found in HB MAME.info/ changelog update- '''[[Pinball]]''':Game includes electromechanical external artwork required to properly emulate the game.:Game may include digital elements for scoring or other gameplay features.- '''Plug and Play''':Primary purpose of hardware is to play games. Best examples are the Plug and Play TV game devices.:Game software is self-contained within the physical unit.:May utilize MAME Software Lists for adding additional games.:Hardware in real life is required to be attached to an external display.:Hardware in real life has self-contained controls.|} '''Note:''' Some of the aforementioned categories may have their own pages with compatibility and other information as desired.</div>
===ROM dumps===
MAME either has lots of standardization on how When developers know more about a system, they often have to dump more components like ROMs and BIOSes if necessary. It's highly recommended to use a ROM management tool such as RomCenter or ClrMamePro. Without these programs, it'll take you a lot longer to organize find the ROM necessary files for a game. Something as popular as Pac-Man will probably never need newer dumpsbeyond the current ones because it's been continually researched from the beginning, or it has and the ROMs have been pretty widespread, but for very littlerare machines, and sometimes MAME will see continuous changes in the given files it needs as more information is discovered about the system. You can be vague and confusingexpect these ROMs to surface online in some form, but you may as well never get them directly from the developers themselves. A single game may need lots  MAME is '''very strict''' about what components of files for the a ROM dump it needs to even registerfunction, and separate folders for it may tell you if something is wrong with the BIOS files (i.e. a failed checksum); only a ROMset with all the newest information will work in recent versions of consolesMAME. For machines that use stuff like hard drives and optical disks to store its data, MAME has a special its own format called Compressed Hunks of Data (CHD) which uses a number of compression methods to reduce the size of a raw image file. This format also allows MAME to use 7-Zip archives for ROMsets in place of Zip files. ===Frontends===MAME used to be a command line application that was launched by a separately licensed frontend. However, with MAME relicensing as open source in 2016, the developers have since incorporated MEWUI as its built-in interface. However, it still accepts command-line parameters, allowing most frontends to keep working. You can see a list of them '''[[Frontends#MAME|here]]'''. ===History===MAME was first released on February 5, 1997 by Nicola Salmoria as a Pac-Man emulator,<ref name="worldofstuart">[http://worldofstuart.excellentcontent.com/mameover.htm MAME OVER] (0.99)</ref><ref name="History">{{cite web|url=https://www.youtube.com/watch?v=VgJF18Pm7MA|title=A Brief History of Emulation: MAME|publisher=Youtube|accessdate=2018-09-14|date=2017-12-02}}</ref> but before he could do any more work on the project he handed it over to Mirko Buffoni in April 1997 after being required to do National Service in the Italian army.<ref name="worldofstuart"/> Since then, even as early as 2003, the emulator has become very extensive, with the majority of arcade system boards from the 1970's, 1980's and early 1990's supported. MAME originally used a custom BSD license that prohibited commercial use in a few ways. This was mainly used to deter arcade operators from monetizing an emulated version of a widely available commercial title like Pac-Man. However, the MAME team didn't have the funds to afford prosecutors, so this was never effectively enforced. Through an extensive relicensing process in 2016, the project completely changed to a combination of GPL/BSD where applicable. This allowed them to merge the codebase for the MEWUI frontend into the main application starting with version 0.171 (February 2016).
It is highly recommended ===Support===You can support the efforts of MAME developers, dumpers and other stakeholders with donations or resources to use a ROM management tool procure PCBs (Printed Circuit Boards) of arcade games, and all other computing or electronic devices that have digital screen output and in most cases, audio support; upload materials such as RomCenter or ClrMameProartwork of arcade cabinets, special handheld units and pinball tables, among other hardware examples.* [https://smitdogg.mameworld.info/du/donate.html The Dumping Union] (Based in USA. Monthly donations start from $10 US.):[https://www.mameworld.info/ubbthreads/showflat.php?Cat=&Number=311481 The Dumping Union Info Page] (Info and an alternative PayPal link to send custom one-off donations with option to make it monthly.)* [http://members.iinet.net.au/~lantra9jp1_nbn/gurudumps/thanks.html Guru] (Top-quality [http://members.iinet.net.au/~lantra9jp1_nbn/gurudumps/forsale/index.html dumper and repairer of arcade PCBs from Western Australia]. He also repairs many other electronic equipments. Better reliability than The Dumping Union. Important pages: [http://members.iinet.net.au/~lantra9jp1_nbn/gurudumps/faq.html FAQ], [http://members.iinet.net.au/~lantra9jp1_nbn/gurudumps/decap/index.html Decapping Status Page], [http://members.iinet.net.au/~lantra9jp1_nbn/gurudumps/DumpingProject/wantedlist/wanted. Without html Wanted Dumps List], all links under 'Guru Status' drop-down menu. For custom one-off PayPal donations with option to make it monthly.)* [https://www.patreon.com/user?u=4805718 CAPS0ff] (High quality chip decapping specialist. [https://twitter.com/Caps0xff He] and other people get rare, security protected arcade boards, shave the required files tops off the security chips, and file versionsdo stuff like point lasers at them to get them to spit out the keys. Sometimes they use microscopes to read the keys off the die. 6 Patreon tiers from $1 US to $300 US, or custom amount monthly.)* [https://team-europe.blogspot.com/ TeamEurope] (High quality decappers on same level as the 'Guru' guy. Probably based in Austria, also cooperates regularly with dumper Sean Riddle from the game simply will not UK. Does a lot of dumping of non-arcade stuff (especially cartridges for weird / obscure systems) as well as stuff specific to European regions. Occasional [https://www.reddit.com/r/emulation/comments/9txdsz/mame_team_europe_would_like_help_funding_some/ fundraisers] occur with them. Contact by writing an email to te@crazy#2001#.33mail#.com (remove all # from the address) with the words "[Contact TE]" in the message-header.)* [https://www.patreon.com/moogly Patreon] account of MAMEDev Ryan 'MooglyGuy' Holtz (It's to support the expenses of acquiring computers and other electronic hardware for MAME work.)
'''Non-monetary:'''* [https://mrdo.mameworld.info/mame_artwork.php Mr. Do!'s MAME Artwork] (Artwork uploads submitted by many archivists and device owners for use within the MAME Artwork System. The site's navigation requires a small-ish learning curve. The [https://mrdo.mameworld.info/links.php Links] page is nice. He can be contacted on [https://www.mameworld.info/ubbthreads/showprofile.php?Cat=&User=54&Number=387561&Board=news&what=showthreaded&page=&view=&sb=5&o=&fpart=&vc=1 MAMEWorld].) ==How Toto==
===Convert Bin/Cue files to CHD===
Many emulators other than MAME are beginning to support Compressed Hunks of Data, mainly because compared to the alternatives, it offers compression (or ''better'' compression) on all fronts. [[Libretro]] is making an initiative to support them thanks to a successful bounties initiative, and in many cores such as their [[Mednafen|Beetle]] fork, they've begun rolling it out for certain platforms like Saturn and PlayStation so people can test it.
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
|+How To to <small>(Terminalterminal)</small>
|
|-
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
|+How Toto
| colspan=2 |
|-
|}
==List of Arcade systems emulatedForks==* [http://unmamed.mameworld.info/ List of arcade games that DON'T work] Last updated February 2014. Don't expect the most recent games (like [[Sega NAOMI and variants|Sega Naomi]] ones) to run at full speed, MAME is very resource intensive.* [http://nonmame.retrogames.com/ NonMAME] ([http://web.archive.org/web/20150306213522/http://consume.retrogames.com/ 2015 Mirror]) This is a list of arcade systems that currently are not emulated by MAME or are emulated better by other emulators. ==Frontends=MAMEUI64=MAME has many third-party front ends. {{Main|Frontends#MAME}} ==List of forks==;MAMEUI64:
MAMEUI64 is the current name of MAME32, the original MAME GUI for Windows. As it traces its lineage to MAME32 0.27 from 1997, it has additional bugs compared to mainline MAME, lacks several features of modern MAME or makes it difficult to use them via GUI, and does not scale properly to high resolutions. The MAME developers do not recommend using any derivative of MAME32 for these reasons, instead suggesting mainline MAME with an external frontend if the internal MEWUI is not sufficient.
;GroovyMAME:{{Main|GroovyMAME}}Also known as '''GroovyUME'''Collection of [http://www.progettosnaps. It's a fork of MAMEnet/UME made primarily to support arcade CRT monitors for AMD cardsmameui_en. It also includes input lag reductions that can be taken advantage of on CRTs or LCDshtml all versions]:UNOFFICIAL BUILDS − [http://forumwww.arcadecontrolst2e.compl/pl/466/134/index.php466/topicAutomatyczne-edycje?tsearch=mameui,not|plus,128879not|mewui,not|mameuifx MAMEUI x86/x64 unofficial builds].0.html?PHPSESSID=domm2c4q77esu0j9uohc5vrqn5
;AGEMAME:===[[GroovyMAME]]===Years ago MAME used to exclude gambling games, this lead to GroovyMAME (or GroovyUME) is a fork called ''Arcade Gambling Extensions for of MAME (AGEMAME)'' being created /UME made primarily to support arcade CRT monitors for this specific purposeAMD cards. It also includes input lag reductions that can be taken advantage of on CRTs or LCDs. NowadaysHowever, it's since long integrated into now that modern MAMEversions support variable refresh rate monitors and the "-lowlatency" flag, there is less of a need for GrooveMAME or for other lag-reducing builds such as Shmupmame.
;MESShttp:{{Main|MESS}}For many years, MESS was a separate project from MAME that emulated consoles, computers, and calculators using MAME's architecture and much of it's code//forum.arcadecontrols. As of MAME 0com/index.162php/board, MESS merged with MAME52. MAME now includes all MESS romsets and software lists and separate MESS builds are no longer distributed, although they can still be compiled from source0.html
;===PinMAME:===
PinMAME is a fork of MAME32 0.76 that exclusively runs ROMs for pinball machines. It can be used to launch these ROMs standalone, like with MAME. However, unlike MAME, it also has a COM module called VPinMAME that can be used with the pinball simulator Visual Pinball, or to drive real hardware.
;===ARCADE:===[http://arcade.mameworld.info/ ARCADE]ARCADE is a continuation (maintenance -only) continuation of the MAMEUIFX project, which was in turn forked from MAMEUI/MAME32. MAMEUIFX included unique drivers and games compared to mainline MAME, but these are now integrated into [[HBMAME]] instead.
*Arcade games only*NO No mechanical games (pinball, crane games, etc)*NO No poker, fruit, slot or gambling games*NO No computers, consoles, terminals, appliances, etc*NO No games that display a black screen (skeleton drivers etc)
==Netplay==
*It's slightly (significantly still) prone to freezing
*Mapping controllers and binding keys can only be done in-game, which might be confusing to first-timers
*Incorrectly emulates many games, while outright not being able to emulate others, due to being based on a very old MAME version. Even MAME Kaillera builds labeled with recent MAME versions are actually very old and inaccurate versions with only the game list updated.
*Random, inconsistent FPS drops due to the server trying to keep everyone synched, sometimes stuttering. It's annoying, but rarely does it make it unplayable
*Everyone needs to have the exact same ROM version or Netplay won't work (if it somehow does, it'll desynch rather quickly)
<references/>
==External Linkslinks==
* [https://wiki.mamedev.org/index.php/Developer_WIPs Developer WIPs] (Official MAMEDEV.org page showcasing lists pointing to profiles and links of many MAME developers)
* [https://mamedev.emulab.it/haze/ Developer coverage] from [https://wiki.mamedev.org/index.php/David_Haywood David 'Haze' Haywood]. (A media-heavy blog with few articles per month on average. Goes more in-depth than MAME's changelogs and can be fun to read. Also see his [https://www.youtube.com/user/ShootBoomBoom YouTube channel] & [https://twitter.com/MameHaze Twitter feed]. Former project coordinator, 2003-2005.)
* [https://twitter.com/algestam Twitter feed] from Henrik 'algestam' Algestam (He is well noted for dumping and emulating those Nintendo [[Game & Watch]] LCD handheld titles to MAME)
'''Third-Party:'''
* [https://www.youtube.com/channel/UCuCqiFa48-8uJF2zvXR9nig YouTube channel] of Bob Zed (It shows many news and demonstration videos of MAME'S major updates, working hardware & software, audio & music playbacks, tutorials, among other misc topics. Many videos are grouped into playlists divided by MAME's major releases. First video on MAME coverage started in Nov 2020.)
* [https://www.youtube.com/channel/UC-bPUTexHdVt57iY_pnPCjA YouTube channel] of MAME Favorite Playlists (It shows simple videos on MAME's major updates, working hardware & software, artwork, control guides, and other misc topics. First video on a major MAME update started in Jul 2021.)
 
[[Category:Emulators]]
[[Category:Multi-emulators]]
[[Category:Arcade emulators]]
[[Category:Multi-emulators]]
[[Category:Windows emulation software]]
[[Category:Linux emulation software]]
[[Category:macOS emulation software]]
[[Category:Emulators]]
[[Category:Netplay]]
10,778
edits

Navigation menu