David Haywood's Homepage
MAME work and other stuff
February 3, 2012 Haze Categories: General News. 7 Comments on 15 Years is a Long Time

Depending on who you ask MAME was born either on the 5th Feb 1997 with the release of Mame 0.1 or slightly before that in the form of Nicola’s MultiPac releases which were the basis of that release (even today you can see some remnants of how they grew to become MAME, for example the graphic decoding structures)

The official anniversary is generally considered to be the 5th, so, this coming Sunday and the date has come to correspond with the release of a new full version, 0.145 in this case.

I am slightly concerned at how tight things are running as far as bug fixes go. Aaron’s recent batch of changes have left a number of Saturn / STV games broken*, clickabale artwork broken, the tilemap viewer in indexed modes broken, the cheat system broken, and possibly one or two other outstanding bugs caused by the tag changes which have yet to be shaken out. Kale’s recent changes also mean that many games in metro.c are still broken and a couple in suprnova.c as well, then you’ve got some longer standing regressions too such as some of the Taito GNET games, broken PSX hardware quads and a couple of other (looking further back there are still the performance regressions from some memory system updates..)

I’ve been doing my bit to clean up / fix some of the recent issues, as well as some which have been lingering from the Data East rewrite I did a bit ago, while converting the remaining drivers over to use the generic handling but I think for the highlighted issues it’s going to take a big push from the people concerned (Aaron, Kale etc.) either today or on Saturday if they’re to be fixed in time for a proper stable anniversary release. I have a feeling official support for the FLAC CHDs won’t make such a release due to the priority of other stuff being higher, although I have just submitted code to allow sound samples to be in either format which will hopefully make the build.

It’s good to try and make anniversary builds special, throw in a few surprises. The 10th anniversary was especially cool (5 years ago!) with a good number of interesting things, and a special modern build of MAME 0.1 to boot. I guess it’s also worth mentioning that PC emulation in MESS recently improved to the level whereby you can actually run the original MAME 0.1 binary inside of MESS (albeit slowly!) which is pretty neat. If there are any surprises this year they’ve been kept well under wraps, I did want to sneak one in myself but the contact I was working with on one has been unavailable for a month, so progress has temporarily stalled there, and the other possible one I still haven’t managed to get the green light for inclusion, always next year, or the year after.

Either way, 15 years is an impressive achievement and while the project isn’t pulling up trees at the same rate it was you do have to wonder where we’d be without it, how many other projects and current games / ports would be different without it providing a reference point for all to use. It’s also been a great eye opener to arcade culture around the world, as unpopular as things like Mahjong are with the non-Japanese crowd the sheer number of titles listed is testament to the success of the genre in Japan, likewise how many people would know Korea had it’s own arcade industry, producing games which were mostly ripped from more popular ones? How many people have had their eyes opened to companies like Cave by review sites written by people using emulators? How many people have picked up programming skills, and an understanding of obscure assembly languages by trying to contribute to MAME? As an educational tool it’s been immense. There aren’t many projects which survive 15 years where there is still just as much can be done today as there was back then. MAME is almost as old today as some of the first hardware/games it emulated were when 0.1 was released, think about that one for a while.

So… even if 0.145 does come out and ends up being a bit buggy you can also look on the bright side, at least you’re still seeing regular releases 15 years from when the project started, and everybody has access to the latest code via the GIT repository these days so you can build yourself a fixed build as soon as any fixes go in.

* It’s possible the Saturn breakage (Radiant Silvergun specifically) occurred earlier, but I believe it was traced back to that. Likewise the cheat issue might be fixable by changing all existing cheat files, but I’m not sure that’s desirable behavior.


You can follow any responses to this entry through the RSS 2.0 feed.

Hey Haze, are you still doing that Saturn list?

I’m letting things settle a bit before going back to it.

Once the FLAC support is officially turned on, I have a new HDD, and can reconvert / resync images I’ll get back to it.

Also as mentioned above, a fair chunk of Saturn emulation is broken at the moment (some of the video modes are just plain wrong now) so that needs fixing up again too before I start going over the compatibility.

Well, a textual list can still be managed without emulation working.

Haze, can you explain all this PC emulation stuff going on in MESS? Is the code being written from scratch? And if so, why not use DOSBox code?

Mostly improvements to the 386+ core, and VGA emulation, as well as other general tweaks (better soundcard support, better ISA/PCI hookups)

The thread at

gives a good indication of what’s going on in terms of ‘end results’.

DosBox is GPL, the code can’t be used in MAME.

Ah, understood. Thanks for the explanation and the link. :)

While DosBox is GPL, you could always ask its authors to relicense specific portions of code, if the code in question is written only by a few reachable persons it could happen. Remember that DosBox used for some time relicensed OPL emulation from MAME.

Though the better question would be if there is anything worthwhile for MAME in DosBox. Many things in DosBox are simulated at a higher level (e.g. some things are simulated at the BIOS level), and would be unsuitable for MAME. Not to talk about the different coding styles, which caused some pain in DosBox case in the OPL case above (apparently, the code in question felt alien to some DosBox developers).

OTOH, DosBox developers have worked a lot on video card emulation, and some parts would probably be interesting to MAME, even if only as a reference. That said, the DosBox forums at vogons.zetafleet.com have some nice topics on e.g. CGA composite mode, …

TL;DR: “using” DosBox code can end up being more work than what a non-developer would at first think.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.