Fork me on GitHub

Welcome to The Official Site of the MAME Development Team

What is MAME

MAME is a multi-purpose emulation framework.

MAME's purpose is to preserve decades of software history. As electronic technology continues to rush forward, MAME prevents this important "vintage" software from being lost and forgotten. This is achieved by documenting the hardware and how it functions. The source code to MAME serves as this documentation. The fact that the software is usable serves primarily to validate the accuracy of the documentation (how else can you prove that you have recreated the hardware faithfully?). Over time, MAME (originally stood for Multiple Arcade Machine Emulator) absorbed the sister-project MESS (Multi Emulator Super System), so MAME now documents a wide variety of (mostly vintage) computers, video game consoles and calculators, in addition to the arcade video games that were its initial focus.


The MAME project as a whole is distributed under the terms of the GNU General Public License, 2 (GPL-2.0), since it contains code made available under multiple GPL-compatible licenses. A great majority of files (over 90% including core files) are under the BSD-3-Clause License and we would encourage new contributors to distribute files under this license.
Please note that MAME is a registered trademark of Gregory Ember, and permission is required to use the "MAME" name, logo or wordmark.

MAME 0.117u1

19 Jul 2007

And now time for a big update. Head on over to the Latest Release page and grab the 0.117u1 release. Make sure you check out the whatsnew file in detail as well.

The first major change in this release is the input system. The way that the OS-specific layer communicates with the core about input devices has changed substantially, allowing a lot of the tricky functionality to be handled automatically by the core code. For the Windows build specifically, this marks a shift in behavior: on Windows XP and later, both keyboard and mouse now use the raw input APIs, which allow support for multiple keyboards and mice.

A second big change is an experimental one. A new built-in user interface is provided for selecting a game. This interface is intended to be minimal and will not serve to replace a true frontend. However, it does provide a better first experience for those unfamiliar with MAME and is useful for launching a game when you can't remember the exact driver name.

In addition to these changes, we have discrete sound for Head On and clones thanks to couriersud; an updated Monza GP driver from Phil Stroffolino; and some nice fixes to the toaplan2 driver from Alex Jackson.

As always with big changes like this, make sure you test things out and report any strangeness over at MAME Testers. Have fun!

MAME 0.117

10 Jul 2007

Time to grab the official MAME 0.117 release over at the Latest Releases page.

This past month we've had a lot of excitement and improvements to the code. Most visible is of course the quick progress on the CPS-3 games, which are now all fully working and playable thanks to the work of Andreas Naive, Haze, ElSemi, R. Belmont and others. Phil Stroffolino returned from an extended absence and contributed a mostly working DJ Boy driver. Adam Bousley brought the early Taito classic Change Lanes into a working state. In addition, Zsolt took yet another crack at making the Neo-Geo driver more accurate and made some substantial improvements. Zsolt also took on the task of removing some legacy code which had been sitting around for years, updating many drivers to use more recent timing functions.

And in an odd twist of fate, this release marks the first time we have preliminary (read: not working yet) support for a bootleg arcade multigame system — based on an earlier hacked up version of MAME. In our attempts to document arcade history it seems we have inadvertently become a part of arcade history....

MAME 0.116u4

05 Jul 2007

Get this latest update to MAME 0.116 on the Latest Release page. Updates this time include a working Change Lanes driver from Adam Bousley, working DJ Boy from Phil Stroffolino, proper CD emulation in the CPS3 driver by Haze and ElSemi, and a number of smaller fixes and tweaks from a large host of contributors — even more than usual this time around!

This is the last planned update to version 0.116, so be sure to get your bugs reported to MAME Testers as soon as possible so that the 0.117 release is solid. After the next release is out, there will be some changes coming to the input system to move some functionality into the core and add a couple of nice extensions as well.

MAME 0.116u3 Redux

28 Jun 2007

Oops, looks like my build script was broken by the recent change in object paths, and thus it did not catch a compilation error in the original 0.116u3 update. A new version of the diff is now available (same name as the original). If you need to unapply the original (via patch -R), you can still download the busted one here.

MAME 0.116u3

28 Jun 2007

Time for another release, get it while it's hot. Due to the (Windows-specific) input-related issues in the last couple of builds, the input code has been temporarily reverted back to what it was in 0.116. These issues have prompted a more pervasive cleanup that has been brewing for some time, and which isn't ready to distribute just yet.

In the meantime, this release has the expected collection of CPS3 updates from Haze, some significant improvements to DJ Boy emulation thanks to the return of Phil Stroffolino, an improved Donkey Kong driver from couriersud with better colors and many other enhancements, and another round of modernizations thanks to Zsolt. Have fun!

MAME 0.116u2

20 Jun 2007

A new update to MAME 0.116 is now available on the Latest Release page. The big news in this release is of course the decryption and booting of Capcom's CPS-III games. A lot of great progress has happened on this, but be warned, there is still a good deal of work left to complete the emulation. We also have some more Neo-Geo updates from Zsolt, a major Dooyong driver update from Vas Crabb, and some nice code cleanups from Zsolt and Atari Ace.

There have been a lot of nice updates to drivers over the past couple of months, but that also means there may be some regressions lurking. So if you see anything amiss, please post a message on the MAME Testers board lettings us know!

Updated Windows Build Tools Now Available

17 Jun 2007

Those of you who regularly build their own MAME binaries on Windows will want to head over to the Development Tools page and follow the directions there to grab the latest set of tools. This set of tools contains the latest officially released mingw toolset, along with a set of patched files that fixes the problems they have been having under Vista. This means that you can now build MAME on a Vista machine just like on any other machine — no more hacks required (in fact, if you have the existing workarounds enabled, you need to remove them; in particular the GCC_EXEC_PREFIX environment variable should be eliminated).

A side effect of this upgrade is that the official base compiler for the Windows builds is now gcc 3.4.5 instead of 3.4.2. This isn't a big change, but it is worth noting. Hopefully the mingw folks will eventually get around to releasing a 4.x build of gcc sometime in the not-too-distant future, but I'm not holding my breath. A toolchain that supports 64-bit compilation under Windows would also be nice, but let's not get carried away here.

Finally, the pre-packaged toolset now contains the SDL headers and libraries, so you can build SDLMAME for Windows out of the box.