David Haywood's Homepage
MAME work and other stuff
March 31, 2012 Haze Categories: General News. 9 Comments on Current State of Combined Projects

I’ve had a number of people ask about this… The current state of the universal / combined MAME+MESS builds is simple.

The patch for the universal build target (posted 14th Feb 2012) still works as expected. This makes no changes to the existing source files, and simply adds a new folder called ‘uni’ containing details of the build target.

All that’s needed is for you to check out the current MESS sources from their public SVN or the GIT linked on the left and apply the patch, then change the target to ‘uni’ in the makefile ( or compile with make TARGET=uni )

There are no known current conflicts & everything should work just as well as it does in the individual builds. All validity checks pass. The compiler / linker still doesn’t report conflicting class names, but hopefully those have all been resolved manually.

Still no word on this going in the tree officially, but the work is all done and has been for a while. As stated previously the only thing I’d do is rebrand the target as ‘une’ the “UNiveral Emulator”

For whatever reason the megatech.xml & stv.xml (used for loading of those systems via software lists) are missing from the MESS distributions despite being in a shared folder, so you might want to copy those over from MAME if you plan on using the softlists for them, however the standard ‘internal lists’ still work fine in those cases as long as you don’t want multi-slot support.

I’ll probably post binaries sometime around the next full release, but I’d like to see the remaining CHD issues (random hangs) ironed out first, the ECC CD compression patch I sent Aaron applied in a suitable / clean way, and the lists all updated to use CHDv5 hashs where appropriate.


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


I’m very grateful for your project, I think an official merger between MAME and MESS is long overdue. I use the combined source to build UNE on Linux. I have a question about APE support (which you introduced in 0.145), I can’t get it to compile without removing every reference to APE in the source since I’m not sure which dependencies need satisfying. Do you pla

… n to implement it in the next version as well?

(Sorry, posted too soon)

The APE support wasn’t included officially, and the code has changed significantly since, I think it’s fair to say that venture is dead. I would have liked it there for the ability to import old ‘PakIso’ images directly, but it doesn’t look like it’s going to happen.

The FLAC option offers comparable compression and much better speed anyway.

Haze AFAIK, the core team doesn’t like you (yet they do like your code and contributions – weird mix if you ask me). Am I correct?

I am not sure why – I don’t usually like or follow intricacies on open source projects. There is enough on TV. In any case it helps that you DO support the project even given the circumstances (many if not most would just say “scr*w it” – whether it’s their fault or the other side’s – doesn’t actually matter).

Anyway, this doesn’t help with the merger. This is the bottom line. If you were one of their favorite kids, the merger would have happened long ago. This is what makes me sick actually. That those “intricacies” define a project that tens of thousands use.

It WOULD help approaching the less anti-Haze members of the team. Work from inside out.

I hope my post is not way off your reply publishing policy OR the truth.

It is a rather silly situation I’ll give you that.

I’m providing most of the talking points, the things that are keeping people interested, or getting them to upgrade to newer versions. Some of the Chinese forums have 40-50 page threads commenting on the Demon Front progress for example. Maintains a level of interest in the project there. Likewise DDP2 maintains interest with the people who frequent the shmup forums and the like.

I’ve also been pushing support for, and writing code for things like the 7zip support, which people have been asking about for years.

I tend to be quite critical of changes made by the team, but any project needs that too IMHO, it gives balance to the development process and my concerns tend to be genuine ones unlike those on certain other kiddie sites.

I still plan on getting some of the non-video gambling games further, and hopefully breaking some new ground there too, again giving a talking point for the people who are interested in those (I currently have the Scorpion 4 platform showing ‘Initializing’ at least, progress is slow, but it’s something I’ll keep coming back to) Very UK centric, but once real results start coming through it will keep people interested in the project as well as providing the basis for improved emulation of the newer MC68k chips.

I also work on the more mundane stuff, sorting through ‘trash’ roms for the Brazilian guys, trying to sort out what’s valid, and trying to sort out the gems from the junk. Again this raises talking points with a small part of the world and keeps a level of interest in the project with the hope that other people in the South American regions might realise they too have hidden gems tucked away (would be nice if the Ms Pacman Twin from Argentina showed up for example)

I’ve also continually maintained an interest in getting Korean games supported, in the hope that again some Korean MAME fans may contribute more one day, I’m sure that a lot of their industry never left the country either.

Now some would twist these words and say I only work on things for attention, however that’s not true, I work on plenty of things which nobody even cares to mention but the key for me is keeping people interested in the project, giving people real reasons to update to new versions and building bridges to potential new contributors and resources, however fruitless that is at times. It’s true you’re unlikely to find people who care about every bit of progress in every single area, but by providing a good spread of work, and targeting specific groups of people with different bits of news + progress the chances of unearthing new people who can contribute, as well as new resources to contribute are greater and will therefore help further the project beyond the current developers (myself included)

If you take away a lot of the things I’ve worked on then you take away all of that, and people are left with no reason at all to upgrade, there are plenty who already don’t but resigning yourself to nobody ever upgrading doesn’t do the project any good at all and means MAME loses out on testing, and users lose out on the less publicized but still important improvements elsewhere.

Of course it’s also important that people get a good experience from upgrading, obviously if you’re making a big jump from an early version to a current version you’re going to see a big performance dip, and large changes to romsets which are mostly unavoidable, but what you don’t want to see are bugs creeping in and being left unfixed because that is just going to leave people thinking that newer versions are slower, more inconvenient, and buggier.

This is also why you don’t tend to see me working on 3D systems. Until MAME has some way of supporting them with reasonable framerates then they’re actually just going to make MAME look worse, not better. R.Belmont was wondering why a Metal Slug rip-off (Demon Front) got so much more attention than the Hikaru progress being shown, but the reason is simple, nobody sees progress on 3D systems in MAME as really worthwhile because both the performance and overall emulation quality tend to be so poor that they’re not worth running. That’s not to say progress isn’t worthwhile, but trying to hype such progress is just going to come back to bite you once people try it; I’ve seen that first hand with HNG64.

So no, I’m not especially popular with the dev team, I don’t agree with every action they take, and there have been some falling outs at times because of it, however it’s rather obvious that the project would be falling a lot more quickly into irrelevancy without my submissions. It’s also still as obvious as ever that if I want to see something done I have to take action to make it happen so taking a rather optimistic view that somebody might step up to the plate and do the things which have been left to do would be at this point in time misguided.

My goal remains simple, to continue to contribute drivers and keep the project relevant, while pushing ideas + code changes which do that without compromising the overall integrity of the projects. It doesn’t really matter who is in charge, ensuring that the project has a healthy future by maintaining a userbase of people interested in it is more important, otherwise everything we’ve done for the past 15 years is gone to waste because it’s simply never going to end up being improved further. We all owe it to the people who have worked on MAME in the past to continue to keep it relevant in the future, it’s a key notion underpinning emulation and one of the reasons emulators were created in the first place.

I still think that having a single project would be better overall because reasons FOR using, and reasons FOR upgrading are easily more important and count more than reasons to not upgrade, and while yes, I’d expect some initial friction and people claiming they’ll never update again most of it is just hot air, and as soon as MAME / MESS give an actual reason FOR upgrading which those specific people see as a benefit (be it 3d acceleration, emulation of a platform they really care about or something else) they’ll upgrade to the latest version anyway because the core functionality they were using in the previous version hasn’t actually been degraded at all by the merging (as should be obvious by the tiny size of the patch actually needed to do it and the fact that it isn’t actually changing any other files in the projects)

It’s not exactly like the Windows 8 clusterfuck where some dimwit decided it would be a good idea to cobble together a desktop OS with a phone OS, and half cripple normal usability in the process; everything would be as fully functional as it was before, in exactly the same way it was before for any given use case, you’d simply have a more flexible project with more choice and a central point of development and knowledge. The key difference is really that MAME and MESS *are* one project, just split in half over something as trivial as a coin input, but the primary distribution isn’t representative of them even being related, never mind the same thing. At a push, you could consider MESS to be a fork, and any good fork should eventually be merged back in with the mainline. At this point in time it makes as little sense to have them separate as it would to split MAME into pre 1990 games and post 1990 games versions, there simply are no pros to having things split, it would just be an arbitrary split flying in the face of all logic when viewed from a hardware perspective, which is what the emulators are really about in the first place.

Thank you for the reply.
I hope people from the team read (and I think they do).

Keep up doing what you are good at. As for the part of you being a critic that people don’t tend to like, been there, know how it recoils. Keep strong. They cannot look the other way forever.

Funny, just today I was in an MSFT partner meeting where they also showed Win8 and how it is still easy to use with a mouse and not a touch screen (which it isn’t). They’ll get it “there” though, don’t doubt that – they are MSFT. They are making money for a reason. (and this comes from a guy that although makes money from MSFT, still believes Amiga was the best computer ever)

Yeah, hopefully they’ll get it eventually, but there really are no benefits at all to Metro on the desktop, and it absolutely should not be a default interface let alone one you can’t fully disable or get booted back to whenever you want to launch something, it’s simply getting in the way, and acting as an inconvenience, something which an OS should never do IMHO.

Speaking of the Amiga, it is rather ironic that one of the only things I didn’t like about it is the number of applications which insisted on being full-screen (I know the screens could be dragged up and down, but generally you didn’t use them like that ;-) Back then it made a bit more sense due to memory limitations and the like tho.

From a core OS perspective I still consider 2000 to be the best Microsoft have put out, and that’s a worrying 12 years ago now. File management was snappy and efficient, the Search functions worked well and actually found things properly, the default configuration was even pretty good without too much messing around but it’s old, insecure and lacks 64-bit support or support for any modern devices.

Windows 7 / Modern Windows + Microsoft apps continue to frustrate me, video (including emulators) seem to like to end up with frameskip at a layer beyond the emulator which means in some cases my old XP box seems to perform better, the modern versions of MSN messenger are buggy trash, I’m forced to use third party file managers just to search in files properly, and things like the Homegroup networking perform poorly, especially if combined with the built in zip support (try unzipping a project source over the network, you’ll be there all day waiting) It also fails to support now rather common alternative file systems (supporting the common Linux disk formats wouldn’t kill anybody) and basically fails in numerous areas I’d consider critical functionaity of an OS.

I think people have only decided they like 7 because Vista was such a disaster in it’s default configuraiton that people couldn’t wait to get rid of it.

Unfortunately Windows is starting to come across as a cheap immitation of Apple, as opposed to a more powerful platform and I think people are catching on to that. Firefox is suffering a similar fate too, the developers seem to have almost decided that they want it to be Chrome which alienates people who chose Firefox because it was Firefox and because was a more power-user orientated browser. A modern, out the box Firefox install lacks any real identity at all.

I guess the whole thing is akin to say the MAME / MESS merger stripping out all the MESS specific features leaving old MESS users with nowhere to go and no access to the more powerful functions MAME doesn’t make use of directly.

If the merger ever does takes place officially, perhaps MAME could remain the project name. Multiple Archaic Machine Emulator accurately describes the functionality, and still works with the established trademark.

If it eventually happens and the main distribution contains everything by default it could still be MAME…

Just because the project has evolved doesn’t really mean the name has to change. Raine is ‘The Rainbow Islands Emulator’ but in reality was during it’s prime the pioneering emulator for a good number of other systems.

Of course MAME being the more ambitious project, with better debugging tools, more developers, and an open model for a longer period of time had more momentum, I do miss the days of logo competitions for Raine tho, the name / link to Rainbow Islands meant the entries were always colourful :-)

For now the ‘everything’ binaries are easier to distinguish by calling them UNI / UNE

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.