MAME is the multi-arcade emulator for your Mac.
MAME is the Multi Arcade Machine Emulator for playing classic games. Here’s how to get it up and running on your Apple Silicon Mac.
MAME is a well-known project that allows you to run classic hardware systems and games on modern computers. MAME supports Macs, Windows, Linux, and some Android devices. There are also third-party emulators which use MAME on iOS.
MAME dates back over twenty-five years and was originally created by Italian developer Nicola Salmoria. The project’s development has changed hands over the decades, and there was an initial older version for Mac OS 9 called MacMAME.
Although MAME is now open source under the GPL license, the MAME trademark is registered to Gregory Ember.
MAME doesn’t have a Mac double-clickable app – and to use it on a Mac, you’ll need to know how to use Apple’s Terminal app, or find a third party front-end to run it with.
Keep in mind that MAME is still pre-release and isn’t finished software despite being worked on for many, many years, so you may encounter bugs.
Updated for Apple Silicon Macs
MAME 0.274 has been released with dozens of bug fixes and the new version supports ARMv8 CPUs (including Apple Silicon). For Windows versions, you’ll need a CPU that supports x86-64-v2 (most Intel CPUs since 2008, and AMD CPUs since 2011).
0.274 includes a new ARMv8 back-end re-compiler, which includes support for Apple Silicon. A host of new systems and games have been added, most notably support for 1990’s-era Silicon Graphics IRIS workstations, CD-i graphics, and several Japanese systems including consoles from Namco, Konami, Irem, and SEGA.
Work is also progressing on supporting older Apple PowerPC Macintosh systems. MAME 0.274 requires the SDL2 library to work, which implements cross-platform graphics and sound.
The full change log for MAME 0.274 is here.
Installation
You can download the built distribution of MAME from the MAME development website, but doing so gives you a folder of command-line binaries which you’ll need to navigate yourself. The main binary is simply called “mame”.
An easier way is to install MAME is via the Homebrew package manager. The MAME Homebrew formula for installation in the macOS Terminal app is:
brew install mame
There’s also a MacPorts version. The MAME Homebrew formula will install several other dependencies for you automatically, including SDL2, sqlite, the flac audio codec, and others.
Once you’ve installed MAME, you can run it from the Terminal app without a front-end by navigating to its directory using the cd
command, then by typing its binary name and pressing Return on your keyboard:
mame
There are two additional third-party MAME tools installable by Homebrew: the advancescan ROM manager, and rom-tools additional MAME tools.
Checking installation
Once you have MAME installed, you can check where it lives on your Startup Disk from within Terminal by typing the following line followed by Return on your keyboard:
which mame
If everything is installed correctly, Terminal will display the path on your drive where MAME now lives. For example:
/opt/homebrew/bin/mame
MAME also comes with its own quite extensive man (manual) pages. To view the MAME man page in Terminal type: man mame
and press Return.
The man page also displays the installed version number, but not until you’ve scrolled all the way to the very bottom just above the (END)
marker. To exit the man system in Terminal press Control-Z or q.
A MAME discussion on reddit covers a variety of MAME topics including various front-ends. If you’re interested in MAME’s technical development details, check out the MAMEDev Wiki.
We did encounter a few system hangs when running MAME on our M2 Mac mini, but overall this release seems to work fairly well. You might want to save any open work on your Mac before running it.