MAME
mamedev.org
What it is
MAME is a free emulation framework intended to preserve software history by documenting and reproducing the inner components of arcade machines, computers, consoles, calculators, and other electronic amusement systems. It can emulate over 32,000 individual systems from the last five decades. Alongside emulation, it includes an interactive low-level debugger for investigating software behavior, diagnosing emulation issues, and developing software for vintage systems. Its Lua interface can inspect device state, access CPU registers, read and write memory, and draw overlays, though the API may change without notice. Plugins support uses such as external-program communication and alternate interfaces; included examples are Discord Presence and a GDB Stub. MAME can save and load states, record inputs for playback, and capture screenshots or video. It is available for Android, Linux, macOS, and Windows; official Windows binaries require Windows 10 or later. BIOS dumps and copyrighted software are generally not included. The project is distributed under GPL-2.0 overall, while more than 90% of files, including core files, are under BSD-3-Clause.
Spec sheet
- What it does
- MAME is a multi-purpose emulation framework that documents and reproduces the inner components of arcade machines, computers, consoles, calculators and other electronic amusement machines.Read 30 Sep 2026 · docs.mamedev.org
- Purpose
- MAME is a multi-purpose emulation framework intended to preserve software history by documenting hardware and how it functions.Read 30 Sep 2026 · mamedev.org
- Intended users
- The debugger documentation identifies diagnosing emulation, developing vintage-system software, creating cheats, ROM hacking, and investigating software behavior as use cases.Read 30 Sep 2026 · docs.mamedev.org
- Platforms
- The current source can be compiled for Windows, Linux, FreeBSD and macOS; official binary packages are designed for Windows.Read 30 Sep 2026 · docs.mamedev.org
- Security
- MAME says it is not designed for secure sites, has not been audited for such use, and should not be run as administrator or root.Read 30 Sep 2026 · docs.mamedev.org
- Support
- Users can report information or code through the MAME GitHub page, MAME Forums, or the project contact page.Read 30 Sep 2026 · docs.mamedev.org
- License
- The project as a whole is distributed under GPL-2.0, and the site says over 90% of its files, including core files, are under BSD-3-Clause.Read 30 Sep 2026 · mamedev.org
- Debugger
- MAME includes an interactive low-level debugger for diagnosing emulation issues, developing software for vintage systems, and examining how software works.Read 30 Sep 2026 · docs.mamedev.org
- Emulated systems
- MAME can emulate over 32,000 individual systems from the last five decades.Read 30 Sep 2026 · docs.mamedev.org
- Emulation limits
- Supported systems may not emulate perfectly, and some systems may not run at full speed even on the fastest computers.Read 30 Sep 2026 · docs.mamedev.org
- Extensibility
- MAME supports Lua plugins loaded from configurable plugin paths.Read 30 Sep 2026 · docs.mamedev.org
- Features
- MAME can save and load state files, record inputs for playback, and capture screenshots or video.Read 30 Sep 2026 · docs.mamedev.org
- Integration
- Included plugins include Discord Presence and a GDB Stub.Read 30 Sep 2026 · docs.mamedev.org
- Latest release
- The latest official release listed is MAME 0.289, with official Windows x64 and Arm64 binaries and source code packages.Read 30 Sep 2026 · mamedev.org
- Lua API limitation
- The Lua API is not declared stable and may change without prior notice.Read 30 Sep 2026 · docs.mamedev.org
- Lua scripting
- MAME's Lua interface can inspect and manipulate device state, access CPU registers, read and write memory, and draw graphical overlays.Read 30 Sep 2026 · docs.mamedev.org
- Network play
- The MAME 0.288 release notes say linked play deathmatch mode in Taito’s Gunbuster is supported over a network.Read 30 Sep 2026 · mamedev.org
- Other platforms
- The MAMEDEV wiki lists macOS and Linux among the non-Windows platforms and provides platform build instructions.Read 30 Sep 2026 · wiki.mamedev.org
- Plugins
- MAME supports plugins for tasks including communicating with external programs, displaying game structures, providing alternate interfaces, and testing emulation.Read 30 Sep 2026 · docs.mamedev.org
- Preservation purpose
- The project’s primary purpose is to preserve decades of arcade, computer and console history.Read 30 Sep 2026 · mamedev.org
- ROM availability
- MAME does not generally include BIOS dumps or software because these are often copyrighted; the team has permission to redistribute some older software.Read 30 Sep 2026 · docs.mamedev.org
- Systems covered
- MAME documents arcade games as well as a wide variety of mostly vintage computers, video game consoles, and calculators.Read 30 Sep 2026 · mamedev.org
- Windows downloads
- The official release page offers Windows x64 and Arm64 binary packages; both require Windows 10 or later.Read 30 Sep 2026 · mamedev.org
- Windows requirements
- Official Windows binaries require Windows 10 or later, 4 GB RAM and a supported x86-64 or Arm CPU.Read 30 Sep 2026 · docs.mamedev.org
Plans and prices
Strong points and limits
Strong points
- Emulates over 32,000 individual systems.
- Includes an interactive low-level debugger.
- Can save states, record inputs, and capture media.
- Available for Android, Linux, macOS, and Windows.
- Free under GPL-2.0 or later.
Limits
- BIOS dumps and copyrighted software are generally not included.
- The Lua API may change without notice.
- Some systems may not emulate perfectly or run at full speed.
- Official Windows binaries require Windows 10 or later.
Who it suits
MAME suits people interested in preserving or examining vintage systems, developing software for them, or diagnosing emulation behavior. Its debugger and Lua interface also support software investigation and modification.
MAME in depth
Read the full write-up
MAME is a preservation-oriented framework for emulating arcade machines and a wide range of vintage electronics. It suits users who want to explore or investigate historical systems, not just launch a particular game. Its breadth and diagnostic tools are compelling; software access and uneven emulation remain practical constraints.
Overview
MAME documents and reproduces the inner workings of more than 32,000 systems across five decades, including arcade machines, computers, consoles and calculators. That makes it a strong choice for cross-system preservation and research, while the scale of its coverage should not be mistaken for a guarantee that every system works perfectly or at full speed. Some systems may run slowly even on the fastest computers.
It can save and load states, record inputs for playback, and capture screenshots or video. These features help users return to a particular state, reproduce an input sequence or document software behavior. MAME generally does not include BIOS dumps or software because they are often copyrighted, so users may need to obtain the files needed for a system separately. The project has permission to redistribute some older software.
Key features
Debugging and inspection
The interactive low-level debugger supports emulation diagnosis, vintage-system software development, cheat creation, ROM hacking and investigation of software behavior. This makes MAME useful to developers and technically curious users as well as players. Its Lua interface adds access to device state, CPU registers and memory, and can draw graphical overlays; scripts can also manipulate device state and read or write memory. The API is not declared stable and may change without notice, so scripts that depend on it can require maintenance.
Plugins and integration
Lua plugins can support communication with external programs, display game structures, provide alternate interfaces or test emulation. Included examples such as Discord Presence and a GDB Stub give the plugin system practical uses beyond customization. Plugins load from configurable paths, but the range of tasks they support is most valuable to users willing to work with an extensible technical framework.
Network play
MAME supports netplay, including linked deathmatch play over a network for Taito’s Gunbuster in the 0.288 release. That is a concrete option for some arcade play, not a promise of network multiplayer across all emulated systems.
Pricing
MAME is free: the MAME plan costs nothing and is distributed under GPL-2.0 or later. There is no free trial because the software is already free. The price does not include most ROMs or copyrighted software, which users may need to source separately. A Dreamcast BIOS is required for Dreamcast use.
The project as a whole uses GPL-2.0, while the site says more than 90% of its files, including core files, are under BSD-3-Clause. The free download is therefore not a bundle of game software, and users should consider the applicable license when reusing project components.
Platforms
MAME supports Android, Linux, macOS and Windows. Official Windows releases include x64 and Arm64 packages and require Windows 10 or later, 4 GB of RAM, and a supported x86-64 or Arm processor. The MAMEDEV wiki provides build instructions for Linux and macOS. The latest official release listed is MAME 0.289, with Windows binaries and source packages.
MAME says it is not designed for secure sites, has not been audited for that use and should not be run as administrator or root. That is an important deployment constraint for anyone considering it beyond personal emulation.
Who it's for
MAME is a good fit for preservation-minded users, vintage-system developers and people who want to examine how software behaves at a low level. Its debugger, Lua access and plugins make it a more capable investigation environment than a simple game launcher. Players seeking a quick, curated library should factor in the work of obtaining ROMs and BIOS files, along with the possibility of imperfect or slow emulation.
Pros and cons
Pro: Coverage across more than 32,000 systems makes one framework useful for exploring arcade, computer, console and calculator history.
Pro: Debugger, scripting and plugin support serve development and software investigation as well as gameplay.
Pro: State saving, input recording and media capture help document and revisit emulation sessions.
Con: Most BIOS dumps and software are not included, so a free framework may still require users to source necessary files.
Con: Supported systems may not emulate perfectly or run at full speed, including on powerful computers.
Con: The Lua API can change without notice, making scripts dependent on it less predictable over time.
Alternatives
RetroArch is another free, open-source option with support for Android, iOS, Linux, macOS, web and Windows; choose it if iOS or web support matters more than MAME’s documented preservation and diagnostic focus.
Manic EMU is a free alternative for users looking for an emulator available on Android, iOS, Linux, macOS, web and Windows.
ClownMDEmu is free software under AGPLv3 or later for users who want a Linux, macOS, self-hosted, web or Windows option.
Lakka is a free OS option for Linux, macOS, self-hosted and Windows use; its required hardware is not included and must be obtained separately.
BlastEm is a free, open-source alternative available on Linux, macOS, web and Windows.
emmd is a free alternative for iOS, Linux, macOS and Windows users.
Genesis Plus GX is a free option for Linux and Windows, with a specific non-commercial license and a standalone GameCube/Wii build.
higan is free software for Linux, macOS and Windows, offered without warranty.
Readers comparing options for particular systems can also browse Sega Genesis Emulators, Sega CD Emulators, Dreamcast Emulators, TurboGrafx-16 Emulators, Game Gear Emulators or the broader Emulator Software list.
Verdict
Choose MAME if you want one free framework for preserving, exploring and debugging a broad range of historical systems. Its standout advantage is the combination of extensive coverage with tools for inspection and development. Look elsewhere if you need included game files, consistently full-speed emulation or a focused, ready-to-play experience without sourcing ROMs and BIOS files.
Verdict
MAME combines broad system emulation with tools for debugging, scripting, and preservation. Users should account for missing copyrighted software and the possibility of imperfect or slower emulation.
Where Specifiction places it
- TurboGrafx-16 Emulators#4 of 338.6
- Multi-System Emulators#7 of 548.5
- Game Gear Emulators#5 of 318.5
- Sega Genesis Emulators#5 of 298.4
- Emulator Software#8 of 398.5
- Sega CD Emulators#5 of 198.5
- Dreamcast Emulators#3 of 98.5