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.

Updated requirements for compiling MAME

28 Mar 2024

We’re soon going to start requiring newer versions of some tools and libraries to compile MAME. The oldest versions of tools and libraries we will officially support will be:

  • GCC 10.3
  • clang 11.0
  • SDL 2.0.14
  • Qt 5.15
  • GNU libstdc++ 10.3
  • LLVM libc++ 11.0

Some older versions of clang, Qt, GNU libstdc++ and LLVM libc++ may continue to work for a while, but no effort will be made to maintain support.

The oldest supported tools and libraries are approximately three years old. Examples of environments that provide sufficiently up-to-date tools and libraries include Ubuntu Linux 22.04LTS, Fedora Linux 33 and macOS 11.0 “Big Sur” with Xcode 12.5.

MAME 0.264

27 Mar 2024

MAME 0.264 is ready right on time! Before we get to emulation improvements, there are some changes to the debugger that may affect you. The debugger’s printf and logerror commands now support more formatting conversions and options, including NUL-terminated strings from emulated memory, hexadecimal numbers with lowercase digits, and left-aligned fields. This may change the behaviour of some debugger scripts. In other general changes, MAME now supports saving compact cassette images in compressed FLAC format, so you can save some disk space.

Thanks to new contributor Enzo Lombardi, Dribbling now has emulated sound! This classic twin-stick top-down football game was once a common sight in Italy’s numerous arcades. Sound effects make for a much more authentic experience. Robin Sergeant, another relative newcomer to MAME development, has been putting in a lot of work to improve the state of the Research Machines RM-380Z family, and it’s really coming together. This release adds sound, graphics, 8" disk drives, and more.

The very rare arcade game Vampire from Entertainment Enterprises has finally been dumped and emulated. A rare sight in ’80s arcades, it wasn’t known for being a great game. In a way, this makes it more interesting, as we’re more often reminded of successful games and more likely to forget the failures.

If you’re feeling adventurous, you can use the newly emulated Visual Technology XDS-19P as a graphical terminal for a modern Linux system running X11 applications. It requires setting up BootP and TFTP servers, as well as configuring the host system so it can connect, so be prepared for a challenge if you decide to try it out.

Of course, there’s much more, including working controls for Tomy Plarail and Tomica TV games, fixes for audio CD playback, and dumps of the few remaining EC series Japanese e-kara cartridges. You can read all about it in the whatsnew.txt file, or get the source code and 64-bit Windows binary packages from the download page.

Read the rest of this entry »

MAME 0.263

28 Feb 2024

Are you all ready for MAME 0.263? This release has some big changes that are going to affect everyone: several default UI control assignments have changed, including pause and save/load state. The changes will hopefully make life easier for people emulating computers. After updating, please check the User Interface input assignments and make any changes necessary for your setup.

We’ve fixed some long-standing bugs this month. Issues affecting large hard disk images (tens of gigabytes) have been fixed, and chdman will now report more invalid combinations of options rather than just producing invalid output files. Crashes or hangs when emulating systems that use discrete sound circuitry simulation on multi-core ARM systems should be fixed, as well as occasional bad sound output from the discrete circuitry simulation.

Thanks to recent work reverse-engineering the K052591 chip, this release features improved protection simulation for Hexion, S.P.Y. and Thunder Cross. Newly supported systems include a few computers from the former Yugoslavia, two more Tiger LCD games, and several more chess computers. The ROMs for the unreleased Deluxe Color Computer have been dumped recently, allowing emulation to be completed, and there’s a big update for the Apple II software lists this month.

As always, the whatsnew.txt file tells you about everything that’s changed in this release, and you can get the source code and 64-bit Windows binary packages from the download page.

Read the rest of this entry »

MAME 0.262

31 Jan 2024

After two long months, we’re back with MAME 0.262! Of course, it’s full of exciting work on multiple fronts. In core media support, MAME now supports FLAC compression for compact cassette images, and Zstandard compression in zip archives and CHD disk images. For maximum compatibility, chdman won’t use Zstandard compression by default, so you’ll need to enable it if you want to use it when creating or converting disk images. For your convenience, unidasm now allows you to specify offsets in hexadecimal or octal.

Three LaserDisc games designed by Rick Dyer are now working: the Japanese version of Time Traveler, the console-to-arcade conversion Thayer’s Quest, and Don Bluth’s Dragon’s Lair. It’s very exciting to see multiple LaserDisc captures combined to eliminate all dropouts from disc degradation and pressing faults for Dragon’s Lair and Thayer’s Quest.

Following up on work in the previous release, MAME now supports Sega’s TV Ocha-Ken system, based on the same technology as the Advanced Pico BEENA. It’s a far simpler system designed for young children, using barcode cards to trigger mini-games. Also from Sega, initial support for the AI computer has been added. No, this isn’t related to the current artificial intelligence craze; it’s a rather obscure system from 1986 featuring a pen tablet and using cartridge and compact cassette media.

Two more Casio Phase Distortion synthesisers have been added: the CZ-230S keyboard and the rare SZ-1 sequencer. The CZ-2230S lacked sound editing features but added a programmable drum machine (using PCM samples) and sequencer. Also in synthesiser emulation, MAME’s Wave Blaster host driver now supports multiple synthesiser modules from Casio, Samsung, and Yamaha. In other musical news, the original version of the very obscure Shamisen Brothers rhythm game from Kato’s has now been fully dumped and emulated.

The microcontroller program for Taito’s KiKi KaiKai was recently extracted. This contains a substantial amount of game logic, allowing the simulation code previously used by MAME to be retired and giving more confidence that the emulation is accurate. Improvements to our Fujitsu MB8841 emulation have fixed persistent issues in Arabian from Sun Electronics. HT1130 microcontrollers are now supported, allowing cheap hand-held “brick games” to be emulated, albeit without sound for now.

This is a big release for chess computer emulation. There are lots of newly supported chess computers from the brands you love, like Hegener + Glaser, Novag, and Saitek, as well as more versions of systems that were already supported. There were also a couple of backgammon computers added, from Saitek and Tryom.

There’s inevitably far more than we have time to talk about here, including an Arabic version of the Mattel Aquarius, an 8" floppy drive controller for the Apple II family, numerous Aristocrat Leisure gambling systems promoted to working, some big software list updates, and lots of code modernised. You can read about all the two months of development in the whatsnew.txt file, or get the source code and 64-bit Windows binary packages from the download page.

Read the rest of this entry »

MAME 0.261

29 Nov 2023

MAME 0.261 will be the final MAME release of 2023, and it’s a real ripper! We’re ending the year with a bang! Over a hundred pull requests were merged this month, including several from first-time contributors as well as many familiar names. Following up on the work last month, two more Casio Phase Distortion synthesisers have been added: the high-end CZ-1 keyboard and the unreleased MZ-1 module. The Yamaha MU50 XG tone generator module is also working a lot better in this release.

Two home consoles with drawing features are now working: LJN’s VideoArt from 1987 and Sega’s Advanced Pico BEENA from 2005. Although they were both positioned as intellectually stimulating consoles for children and both had drawing features, they couldn’t be more different. The VideoArt was universally derided for its poor controls and lack of entertainment value, drawing negative comparisons to the popular Etch-a-Sketch toy. On the other hand, the BEENA was a high-quality device using media combining a ROM cartridge with a picture book, and featured dual pen digitisers. Its ARM CPU is fairly demanding to emulate in MAME, so you’ll need a fast PC to run it at full speed. We’re aware that the current scans of the picture books are not perfect, but it’s still quite usable apart from some peripherals that aren’t emulated yet.

On a completely different note, some of the Taito gambling and medal games have started to come to life. The purpose of the games is to separate you from your money, and there isn’t much gameplay value, but they’re still interesting to see. Some of them feature characters from popular Taito franchises. Speaking of gambling games, a couple of Chinese-language mahjong gambling games from BMC have been dumped.

Systems with AVR8 CPUs now run up to 50% faster, including the Uzebox console, Linus Åkesson demos, and the homebrew Sega Master System paddle controller. A means of dumping the microcontrollers Jaleco used for protection in some Mega System 1 games has been discovered recently, allowing the protection simulation code to be retired for 64th St. - A Detective Story and Big Striker. Our understanding of the gate array protection used for some other Jaleco games has also improved. The internal Super A'Can now has its main CPU’s internal ROM hooked up properly, improving the accuracy of its boot process.

Of course, there’s far more in this release than we have time to talk about here, including newly dumped Korean versions of arcade games, bootlegs from Spain, support for PDS cards on the Mac Quadra/LC 630 family, more Heathkit Terminal Logic Board variants, and lots of new software list items. You can read all about it in the whatsnew.txt file, or get the source code and 64-bit Windows binary packages from the download page.

Read the rest of this entry »

No December MAME Release

26 Nov 2023

Hi everyone! As you’re no doubt aware, the end of November is fast approaching, and we’re gearing up to get MAME 0.261 out. We’re very excited about some of the systems that have been brought up this month, which you’ll know about if you’ve been following development in our git repository.

We won’t have a MAME release at the end of December. Instead, we’ll have a two-month development cycle culminating in a release at the end of January. Enjoy the end-of-year holidays if you’re taking a break, or hang in there if you’re working all the way through. Development won’t stop, and you can always build from the very latest source code if you want a preview of what’s coming in the next release.

MAME 0.260

25 Oct 2023

Some long-anticipated updates landed in October, making MAME 0.260 a very exciting release! Firstly, there are some general updates to MAME itself. After a few false starts, MAME now supports bgfx video output with Wayland on Linux. As requested by users, you can finally use delta CHD files for clone systems and software items. This allows for major disk space savings in some cases when you have multiple versions of a system or software item. There’s also an updated version of PortAudio included.

Two very different systems from Casio have been promoted to working this month. The first is the CZ-101 compact keyboard synthesiser. It used Phase Distortion Synthesis, which was Casio’s patent-avoiding answer to Yamaha’s DX series. To help you load patches, MAME can now feed SysEx files to emulated MIDI input ports. The other is the Loopy, a game console released exclusively in Japan and marketed primarily to girls. While sound output, the sticker printer, and the frame grabber accessory are not emulated (yet), you can try out the system’s entire library of eleven software titles.

Several Korean arcade games were added this month, including a Solitaire card game from F2 System that uses a dedicated control panel and features some rather disturbing pre-rendered 3D animations. A few Merit games were added as well. Other improvements include more emulated NuBus and PDS cards for Macs, Cumana DFS disk image support for the Acorn Electron, and support for an MSX Flash cartridge.

That’s all we’ve got time to highlight here, but of course there’s much more. You can read about everything that was updated this month in the whatsnew.txt file. Source code and 64-bit Windows binary packages are available from the download page.

Read the rest of this entry »