Fork me on GitHub

MAME Project History

What's New?

A project as big as MAME certainly has had its ups and downs during the course of its existence. A comprehensive list of what has changed in the project from a source code point of view is available in the various whatsnew.txt files that can be found on the Previous Releases page. The content of these files has also been extracted into our wiki in the Previous MAME Versions section.

And if you're looking for a comprehensive whatsnew up to version 0.112, you can download the source code for the 10th anniversary 0.112 release, which contains giant combined whatsnew.

Chart of MAME Development

Supported ROMs

An alternate measure of the success of the project is to simply count the number of supported ROMsets. The chart at the right (click for a larger view, and thanks to Fujix for producing the chart) shows the overall trend since the beginning, counting both "unique" ROMsets and total ROMsets. As you can see, the project is still achieving a respectable trajectory given just how challenging it is becoming to find new unemulated arcade systems.

Additional versions:

Daily Work-in-Progress 1999-2004

Another fascinating way to look back at the project's history is to peruse the incredibly detailed Daily MAME Work-in-Progress (WIP) pages. From Feburary 1999 through July 2004, Santeri Saarimaa took on the challenging task of maintaining a detailed daily work-in-progress report of MAME development. These page represent a peek into what was happening during one of the most active times in the project's development.

Project Milestones

However, even just simply counting supported ROMsets, reading the whatsnew files, and looking at the old WIP pages isn't enough to reflect the full history of the project. In an effort to at least touch on some of the highlights and project milestones that generally aren't directly reflected in the whatsnew, the table below lists some important project-level changes and significant new achievements that have impacted the project.

MAME Project Timeline
1997
05 Feb 97 0.1 MAME 0.1 released.
18 Feb 97 0.4 First version of MacMAME released.
23 Mar 97 0.12 First support for multiple CPUs.
26 Mar 97 0.13 High score saving support added.
20 Apr 97 0.18 First version of X/MAME checked in.
26 Apr 97 0.19 Mirko Buffoni takes over from Nicola as MAME coordinator.
02 Jun 97 0.23 First FM synthesis-based sound chip supported — but only through a hack to use the OPL on a SoundBlaster card under DOS.
14 Jul 97 0.26 First vector games added to MAME.
18 Jul 97 0.26.1 First release of MAME32.
10 Aug 97 0.27 Nicola returns as MAME coordinator. MAME switched away from the GPL license.
07 Sep 97 0.28 First 68000 game emulated (Rastan).
1998
08 Jan 98 0.30 YM2151 supported added.
25 Apr 98 0.31 Atari slapstic first emulated. Timer system added. Built-in ZIP file support added.
03 May 98 0.33b1 Public betas started; previously users would have to wait several months between releases. The series of betas were sometimes followed by some rc (release candidate) versions.
16 Aug 98 0.34b1 First appearance of Neo Geo games, which have been the source of much controversy ever since.
30 Aug 98 0.34b2 First DSP core added: the TMS34010.
04 Oct 98 0.34b4 Began using CRCs to identify ROMs.
1999
15 Feb 99 0.35b3 Internal tilemap code added. Previously many drivers did tilemaps their own way.
24 May 99 0.35b13 Switched to PNG from PCX as the main screenshot image format.
08 Aug 99 0.36b2 Konami 052001/053248 CPU first emulated.
2000
26 Feb 00 0.36rc1 Removed Pong and gambling game drivers.
06 Nov 00 0.37b9 First proper 32-bit CPU added (68EC020).
2001
17 Jan 01 0.37b11 Initial support for discrete sound emulation.
24 May 01 0.37b15 Windows takes over from DOS as the primary development target.
19 Aug 01 0.37b16 First checkins for AdvanceMAME.
12 Aug 01 0.53 Abandoning of "beta" numbering scheme.
24 Aug 01 0.54 First release to call out MAMETesters bugs.
2002
01 May 02 0.60 Removed SoundBlaster FM support as software-based emulation finally became better in almost all cases.
04 Jul 02 0.61 Added initial support for artwork external to games.
2003
06 Apr 03 0.67 First dynamic recompiled CPU core added: MIPS3.
15 May 03 0.68 David Haywood takes over from Nicola as MAME coordinator. Added SHA1 hashes in addition to CRCs to reduce hacks and prevent collisions.
23 May 03 0.69u3 First release to have intermediate 'u' updates (0.69), actual first 5 Jun.
09 Aug 03 0.72 First emulation of the SP0250 speech chip.
12 Oct 03 0.75 Removed the concept of TESTDRIVERS, making all drivers available in all builds.
11 Nov 03 0.77 3dfx Voodoo emulation added.
2004
24 Oct 04 0.88 Sega FD1094 decryption added.
24 Nov 04 0.89 New debugger added.
2005
27 Feb 05 0.93 Major sound system reorganization around streams.
07 Apr 05 mamedev.org is born (mamedev.com actually initially).
18 Apr 05 Aaron Giles takes over from David Haywood as MAME coordinator.
03 May 05 0.96 Changed the license to be based off of the BSD license, with commercial restrictions.
14 Aug 05 0.99u2 Video-based gambling games added (drivers ported from AGEMAME).
14 Sep 05 0.100 Added back support for some gambling games.
2006
23 Jan 06 mamedev.org is finally an .org (and on new servers).
03 Jun 06 0.106u1 First version of SDLMAME released.
25 May 06 0.106u2 New video system, focused on letting the video hardware do compositing (enabled by default in 0.106u3 - Jun 1)
20 Aug 06 0.108 High score support removed.
2007
05 Feb 07 0.112 CPS2 decryption fully implemented.
07 Feb 07 MAME 10 year anniversary. Wiki added in mamedev.org.
12 Feb 07 0.112u1 MAME code reorganized.
26 Feb 07 0.112u3 Major changes in sound generation.
17 Jun 07 SDL headers/libraries. Build SDLMAME out of the box.
20 Jun 07 CPS3 decryption added. (0.116u2)
10 Jul 07 0.117 Interesting little fact of history: MAME for the first time includes a preliminary driver of a bootleg multigame arcade that is based on a hacked early version... MAME!
19 Jul 07 0.117u1 Major changes in input system. Basic UI to select a game.
15 Oct 07 0.120 First official x64 build. Further source tree clean up (started few u releases earlier with new development tools).
01 Dec 07 New server for mamedev.org.
2008
26 Jun 08 MAME debugger included all the time.
06 Jul 08 0.126 New universal recompiler engine (started few u releases earlier), cheat engine in the middle of renovation (disabled).
07 Aug 08 0.126u4 Cheat re-enabled (read-only), renovation continues.
19 Aug 08 0.127 First laserdisc game emulated (Cube Quest).
01 Nov 08 mamedev.org renovated.
21 Dec 08 0.128u7 Internal (source) changes: Global Machine pointer eliminated, CPUs are "devices".
2009
26 Feb 09 0.129u5 More hardware components are becoming "devices".
19 Mar 09 0.130u1 Major change in CHD file format.
02 Aug 09 0.133u1 39 in 1 (MAME rip-off originally added in 0.117) now working.
2010
15 May 10 0.138 MESS gets support for Software Lists.
29 Jul 10 0.139 Larger binary due to on-going move to C++ work.
2011
05 Apr 11 Angelo Salese (Kale) takes over from Aaron Giles (longest standing yet - with Nicola Salmoria close behind) as MAME coordinator.
24 May 11 0.142u4 HLSL effects added.
2012
19 Feb 12 0.145u1 7zip support and change in CHD format.
08 Apr 12 Many drivers modernized.
26 Apr 12 Miodrag Milanovic (Micko) takes over from Kale.
20 Aug 12 New dev tools including support for building QT4.
21 Aug 12 Project (MAME and MESS) moved to SVN.
07 Dec 12 Support for Python (and new dev tools).
2013
11 Jan 13 0.148 First mention of MESS along with MAME in release news and first MESS binary in mamedev.org site, widening the foundation towards project merging.
10 Mar 13 Site on new server.
23 Jul 13 0.149u1 Last u release.
17 Sep 13 0.150 First release after abandoning u intermediate releases. Major video interface changes.
05 Nov 13 0.151 Major NeoGeo driver updates.
2014
07 Apr 14 0.153 Independent palettes (as devices) and other architectural changes and major code modernization.
20 Oct 14 Project (also) on GIT.
2015
20 May 15 MAME starts work to become Open Source.
27 May 15 0.162 MESS merges with MAME.
28 Oct 15 0.167 Major HLSL changes.
25 Nov 15 0.168 More HLSL changes.
30 Dec 15 0.169 Modernized core to C++14. First release to build clean in Raspberry Pi 2 and other ARM Linux targets.
2016
01 Jan 16 MSYS2 based tools to build MAME.
27 Jan 16 0.170 LUA support (back) in. More video filtering/effects work.
24 Feb 16 0.171 MEWUI merges with MAME replacing default MAME UI for most platforms. Initial BGFX work. Support for videosnaps capture.
04 Mar 16 MAME is now Free and Open Source software based on GPL-2.0+ license.
30 Mar 16 0.172 First MAME release with new license. New documentation. Major ini changes. Extended BGFX renderer (planing to move completely to). Improved screen effects. Major improvement of file handling support.
27 Apr 16 0.173 Plenty new graphics scaling modes. Support for large archives (>4GB and newer archive features), solving the issue with huge zipped extras in PD. Some work towards Universal Windows App support (UWP).