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.

License

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.219

29 Feb 2020

MAME 0.219 arrives today, just in time for the end of February! This month we’ve got another piece of Nintendo Game & Watch history – Pinball – as well as a quite a few TV games, including Dream Life Superstar, Designer’s World, Jenna Jameson’s Strip Poker, and Champiyon Pinball. The previously-added Care Bears and Piglet’s Special Day TV games are now working, as well as the big-endian version of the MIPS Magnum R4000. As always, the TV games vary enormously in quality, from enjoyable titles, to low-effort games based on licensed intellectual properties, to horrible bootlegs using blatantly copied assets. If music/rhythm misery is your thing, there’s even a particularly bad dance mat game in there.

On the arcade side, there are fixes for a minor but long-standing graphical issue in Capcom’s genre-defining 1942, and also a fairly significant graphical regression in Seibu Kaihatsu’s Raiden Fighters. Speaking of Seibu Kaihatsu, our very own Angelo Salese significantly improved the experience in Good E-Jan, and speaking of graphics fixes, cam900 fixed some corner cases in Data East’s innovative, but little-known, shoot-’em-up Boogie Wings. Software list additions include the Commodore 64 INPUT 64 collection (courtesy of FakeShemp) and the Spanish ZX Spectrum Load’N’Run collection (added by ICEknight). New preliminary CPU cores and disassemblers include IBM ROMP, the NEC 78K family, Samsung KS0164 and SSD Corp’s Xavix 2.

As always, there’s far more than we can fit here, and you can read all about it in the whatsnew.txt file, or get the source and 64-bit Windows binary packages from the download page.

MAME 0.218

02 Feb 2020

It’s time for MAME 0.218, the first MAME release of 2020! We’ve added a couple of very interesting alternate versions of systems this month. One is a location test version of NMK’s GunNail, with different stage order, wider player shot patterns, a larger player hitbox, and lots of other differences from the final release. The other is The Last Apostle Puppetshow, an incredibly rare export version of Home Data’s Reikai Doushi. Also significant is a newer version Valadon Automation’s Super Bagman. There’s been enough progress made on Konami’s medal games for a number of them to be considered working, including Buttobi Striker, Dam Dam Boy, Korokoro Pensuke, Shuriken Boy and Yu-Gi-Oh Monster Capsule. Don’t expect too much in terms of gameplay though — they’re essentially gambling games for children.

There are several major computer emulation advances in this release, in completely different areas. Possibly most exciting is the ability to install and run Windows NT on the MIPS Magnum R4000 “Jazz” workstation, with working networking. With the assistance of Ash Wolf, MAME now emulates the Psion Series 5mx PDA. Psion’s EPOC32 operating system is the direct ancestor of the Symbian operating system, that powered a generation of smartphones. IDE and SCSI hard disk support for Acorn 8-bit systems has been added, the latter being one of the components of the BBC Domesday Project system. In PC emulation, Windows 3.1 is now usable with S3 ViRGE accelerated 2D video drivers. F.Ulivi has contributed microcode-level emulation of the iSBC-202 floppy controller for the Intel Intellec MDS-II system, adding 8" floppy disk support.

Of course there are plenty of other improvements and additions, including re-dumps of all the incorrectly dumped GameKing cartridges, disassemblers for PACE, WE32100 and “RipFire” 88000, better Geneve 9640 emulation, and plenty of working software list additions. You can read all about it in the whatsnew.txt file, or get the source and 64-bit Windows binary packages from the download page (note that 32-bit Windows binaries and “zip-in-zip” source code are no longer supplied).

MAME 0.217

25 Dec 2019

What better way to celebrate Christmas than with a new MAME release? That’s right – MAME 0.217 is scheduled for release today. Just a reminder, this will be the last MAME release that we distribute a pre-built 32-bit Windows binary package for. Compiling for 32-bit targets will still be supported, but you’ll have to build MAME releases yourself starting from next month. This will also be the last release with source code distributed in the “zip in zip” archive format. We recommend getting source code by cloning a tagged revision from one of our version control mirrors (GitHub, GitLab or SourceForge), or you can use the P7ZIP tools to extract the self-extracting 7-Zip source archive. For MAME 0.217, we’ve switched the Windows tool chain to GCC 9.2.0, and uploaded an updated tools package (the minimum supported GCC version has not changed).

With all the housekeeping announcements out of the way, we can get to those juicy updates. The most exciting thing this month is the recovery of the Sega Model 1 coprocessor TGP programs for Star Wars Arcade and Wing War, making these games fully playable. We’ve been working on Virtua Fighter as well, and while the graphics are greatly improved, there are still some gameplay issues as of this release. In other arcade emulation news, sasuke has been busy fixing long-standing graphical issues in Nichibutsu games, and AJR has made some nice improvements to the early SNK 6502-based games.

On the home system side, there are some nice Sam Coupé improvements from TwistedTom, support for Apple II paddle controllers, a better Apple II colour palette, and significant improvements to Acorn RiscPC emulation. TV game emulation is progressing steadily, with two Lexibook systems, the Jungle Soft Zone 40, and the MiWi 16-in-1 now working.

For front-end developers, we’ve added data to the XML list format allowing you to handle software lists enabled by slot card devices (there are a few of these for Acorn and Sinclair home computers). The minimaws sample script has been updated to demonstrate a number of tasks related to handling software lists. For MAME contributors, we’ve made save state registration a bit simpler, and more manageable in the debugger.

You can read about all the fixes, improvements and addition in the whatsnew.txt file, or get the source and Windows binary packages from the download page.

Farewell Morten Kirkegaard

28 Nov 2019

Sadly, the release of MAME 0.216 coincided with the passing of contributor Morten Shearman Kirkegaard. Regular contributor and former project coordinator David “Haze” Haywood writes:

I just wanted to write a brief thank you to Morten Kirkegaard who passed away earlier today, at 12:45 on Wednesday 27th November 2019 after a drawn-out battle with cancer.

While I never knew Morten personally outside of contact on IRC and e-mails, he was a key part of the two-man Danish team, also featuring Peter Wilhelmsen, who together overcame some of the toughest challenges emulation faced in the time they worked together.

Even knowing his own chances of survival were low, his interest in both technical challenges, and the retro scene was such that he made the choice to pour his remaining time and money into doing something that would outlast the days he had remaining, and make a long-term difference.

That he did, with magnificent results. The DS5002FP-protected Gaelco games for example could only be dumped thanks to the work he put in – a path full of setbacks, boards suiciding, and even once a working setup was found there was still a high risk each time. To put things into perspective, prior to Morten and Peter taking on the challenge, it was one that most people had already written off as simply impossible.

As for the games themselves, thanks to Morten’s work we’re fortunate enough to have dumps of all the known ones. This includes the rare Goldart, which I regret not being able to finalize the emulation of while he was still around to see it. Still, Morten did understand the challenges involved, and the part of the that task could only be done with him present was complete, so he excitedly continued to work on other things.

His final contributions included working with Peter on dumping the Air Blaster plug-and-play TV game. Even in a severely weakened state, he opted to take it home for a weekend and work well into the night on finding a dumping solution that worked, debugging the FPGA-based dumper and tangle of wires until he had a dump we were satisfied with. In what can only be considered an act of complete selflessness he pushed past the pain barrier, making light of his rapidly declining and severely debilitating condition.

Between that, other contributions included fathoming the Gunpey Arcade compression scheme, and likewise doing the same for Sega’s Decathlete (and I hope we can finish off that work for the Print Club games using the same type of chip), as well as work on more obscure titles such as Hoei’s Future Flash, the Gamate handheld, and many other important pieces of work.

As a person, he always came across as incredibly skilled and self-motivated, but still humble and happy just to see things progress – a rare mix that made him a joy to work with. If at any point I wasn’t convinced by the results of something being presented to me, I only had to say so and he would take another look.

In the end, he didn’t win his own battle, but he certainly achieved his goal of keeping other things alive for as long as people still have an interest in them.

I know Peter was a lot closer to Morten, considering him a good friend, and so has been hit hard by this, regardless of how expected it was. But even as a distant colleague in another country, I can honestly say his presence will be missed both on a personal and technical level.

Thank you for everything.

Goodbye Morten, and thank you for all your contributions. We’ll all miss you and mourn your loss.

MAME 0.216

27 Nov 2019

With the end of November in sight, it’s time to check out MAME 0.216! We’ve addressed the reported issues with last month’s bgfx update, and made a whole lot of little improvements to MAME’s internal user interface. In particular, setting up controls should be easier, and several issues affecting macOS users with non-English number format settings have been fixed. Some of the issues caused bad settings to be written to INI files. If you still don’t see the filter list panel on the system selection menu, try removing the ui.ini file.

This month, we’re able to present two unreleased 1970s prototypes from Italian developer Model Racing: their internal code names are Cane and Orbite. With the assistance of former Model Racing employees, the source code was extracted from the original disks. These games are incomplete, but they provide a unique look into early CPU-based arcade development. Game & Watch titles continue to be emulated, with the addition of Mario The Juggler, and the panorama screen Mickey Mouse and Donkey Kong Circus games in this release.

This release brings GameKing emulation to MAME. The system-on-a-chip used in this low-cost, low-resolution hand-held console from the early 2000s has been identified and emulated. Games for the colour-screen GameKing III are also playable. Acorn BBC Micro emulation has been re-worked to support internal expansion boards, and a number of additional peripherals are now available. ZX Spectrum emulation has been enhanced with better open bus read behaviour and support for two Miles Gordon Technology peripherals.

Of course, these are just the highlights. You can read about the rest of the fixes and improvements in the whatsnew.txt file, or get the source and Windows binary packages from the download page.

MAME 0.215

30 Oct 2019

A wild MAME 0.215 appears! Yes, another month has gone by, and it’s time to check out what’s new. On the arcade side, Taito’s incredibly rare 4-screen top-down racer Super Dead Heat is now playable! Joining its ranks are other rarities, such as the European release of Capcom‘s 19XX: The War Against Destiny, and a bootleg of Jaleco’s P-47 – The Freedom Fighter using a different sound system. We’ve got three newly supported Game & Watch titles: Lion, Manhole, and Spitball Sparky, as well as the crystal screen version of Super Mario Bros. Two new JAKKS Pacific TV games, Capcom 3-in-1 and Disney Princesses, have also been added.

Other improvements include several more protection microcontrollers dumped and emulated, the NCR Decision Mate V working (now including hard disk controllers), graphics fixes for the 68k-based SNK and Alpha Denshi games, and some graphical updates to the Super A'Can driver.

We’ve updated bgfx, adding preliminary Vulkan support. There are some issues we’re aware of, so if you run into issues, check our GitHub issues page to see if it’s already known, and report it if it isn’t. We’ve also improved support for building and running on Linux systems without X11.

You can read about everything that’s been updated in the whatsnew.txt file, or get the source and Windows binary packages from the download page.

Updated Requirements

24 Oct 2019

The upcoming MAME 0.215 release will be the last version that can be compiled with GCC 5 or GCC 6. Going forward, the minimum supported compiler will be GCC 7.2 or clang 5. The Windows development tools have included GCC 7.4 for some time already, so you won’t need to update unless you haven’t in a very long time.

MAME 0.217 will be the last release with pre-built 32-bit Windows binaries supplied. Starting in 2020, you’ll need to compile MAME yourself if you want a 32-bit version. We’ll still support building for 32-bit architectures, but optimisation for 32-bit x86 will not be a priority.