Jump to navigation Jump to search

  • OS: Windows, Linux and others
  • Cost: Open Source
  • Re-mappable keys: Yes
  • Monitor orientation(s): Depend of game
  • Emulated System(s): MAMETM
  • Unique games emulated: 3000+
  • Homepage: MameDEV
  • Additional Requirements: Game Roms

What is MAME?

(Multiple Arcade Machine Emulator) is one of (if not the) most widely used videogame emulators. Currently, it supports over six thousand different arcade games. Standard versions of MAME can be found at, intermediate versions and development notes are at

Since MAME is an open source project, many people have created modified versions with various extra tweaks and features. You can find some versions on it's own page (Mame Modified Versions).

Dedicated cabinet info

MAME is the main reason, you create your own arcade controls and put MAME into your cabinet.

The default MAME keys to wire your controls to can be found at:

How do I set it up?

Setting up Lightguns/Multiple Analog devices

Support Files

MAME or its modified versions support extra files form of cheats, high score saving, and more.


Cheating is useful for both players and developers. Cheating allows players to get past difficult situations and it let's developers test games without having to be good at all the games.

Before MAME version 0.127, cheating could be enabled using a .DAT file. Since version 0.127, cheating is enabled used a zipped .XML file. The cheat.dat file is not compatible with the latest versions of MAME.

Pre-0.127 Homepage:

Post-0.127 Homepage:

High Score

Hiscore.dat is a complimentary file to help MAME in saving high scores in version 0.32 to 0.107u1. Most MAME games save their high scores by default, but over 2500 games do not save their high scores.

The Hiscore.dat file tells Mame some additional information and how to read and store the high scores using the /hi directory instead of /nvram.

As of MAME version 0.107u1, however, Hiscore.dat is no longer supported. Hiscore.dat has been replaced by the use of save states due to issues that the file caused with proper emulation.

Hiscore support can be added back into Mame using MKChamp's Hiscore diff patches. For more information visit:



Command.dat screenshot

Commands can be shown either in game or in a front end. Commands allow users to view, among other things, the individual command lists for games. This is especially usefull for Fighting Games, but can also show users what individual buttons (and combinations) do without having to press them all. The screenshot is from within MAME Plus!


Note: Command.dat isn't supported by the official MAME build - a Modified Version of MAME is required. Alternatively Johnny 5 and CPWizard can read command.dat files


Frogs with artwork enabled

In game artwork is supported in MAME in versions 0.61 and later. Some arcade machines had images inside them onto which the screen was projected, had artwork overlaid on the monitor or had LED lights on the cabinet that were illuminated during game play. This can't be emulated but is instead simulated with a digital picture of the artwork. Some games, like Frogs, Video Pinball, Drag Race, Armor Attack and Warrior are nearly impossible to play without the original artwork. Other games have elaborate decorative monitor bezels that are not functional but many fans feel they add to the arcade experience.

Starting with version 0.107, MAME began to supports hi-resolution artwork and changed the file format for the layout (from .art to .lay). Pre-0.107 artwork with .art layout files will not work with MAME version 0.107 and later.

To use these files, save them to the /artwork directory.

Post-MAME 0.107 Homepage:


Controls.dat holds a more detailed input list of control types and button labels for many games in mame. Like commands.dat, controls.dat isn't supported by the official MAME build, and Johnny 5 and CPWizard can read controls.dat files.


I upgraded MAME/MAME32/MameUI and now I get errors that files/roms are missing. Why?

As MAME progresses, romsets are sometimes changed to more accurately reflect the original hardware. There are several reasons the romsets 'change'. Here are some of them (courtesy of u_rebelscum):

Case 1: bad dump now replaced by good dump
Case 2: incomplete dump (X chip now emulated now needs Y ROM not needed before)
Case 3: new dump from confirmed source, old dump from unreliable/unknown source
Case 4: new dump is real release, old dump is hacked board
Case 5: new dump is real release, old dump is prototype
Case 6: new dump is wider release, old dump is local release

The first three add/replace to a ROM, the last three usually involve renaming. The short answer is that you need to find a correct romset for the version of MAME you are using, as old romsets may not work with a newer version of MAME.

See also:

See Also

  • MAWS - presents a searchable index of the over 3000 original games (not including clones) that MAME emulates.
  • NonMAME - maintains a list of games not emulated in MAME that are emulated by other projects.
  • unMAMEd - maintains a list of games that have not been emulated in MAME, including many games that are actively being sought out so that their ROMs can be dumped.