David Haywood's Homepage
MAME work and other stuff
January 3, 2018 Haze Categories: General News. 37 Comments on Welcome to 2018, What’s Going On?

Well, unless you’ve been living under a rock you probably noticed the calendar switched over to 2018 a few days ago and might be wondering what this year has in store.

Skipping that for now, 2017 was actually a very busy year for MAME and over the past 5-6 months I’ve been periodically adding updates to the 2017 Write-up article that is linked over on the left. In the past week or two I put some extra effort into that because we were approaching the end of 2017 so it had reached the point where things were unlikely to change dramatically before the end of the year.

The article is still actually significantly lacking, such was the amount of progress made, but for now it covers most of the major announcements and some of the smaller bits of progress I found interesting too. Further content will be added over the course of the next couple of months, digging a bit deeper into the changes made over the year. The non-arcade parts of the article are still very much lacking, and as that’s one of my favourite areas of MAME (just one of the more difficult to always demonstrate) it is something I need to address.

Such was the level of progress in 2017 it’s actually quite difficult to know what 2018 will bring. There are definitely some things that were started in 2017, and have been highlighted in the article, that could be continued this year but it’s certainly going to be interesting to see what breakthroughs are ahead, I certainly couldn’t have predicted the Gaelco progress we saw over the course of 2017 for example.

My own plans, at the moment, aren’t actually that ambitious for 2018, I do want to improve the status of the GameKing (handheld) driver, even if it’s a terrible system, because at the moment a lot of the software list entries are marked as BAD_DUMP and it would be good if I can work with the people who dumped them to figure out the problems and maybe get better dumps. I’m also planning on revisiting the CPU core for the Hyper NeoGeo 64 I/O MCU, although it’s unlikely to improve the emulation of the system at this point (probably only make it slower) I’ve also purchased an LCD handheld from my childhood that I’m crossing my fingers is one that can be dumped and read out, although it’s unlikely I’ll be the one to work on that if it is because there’s already a very efficient and effective workflow in place for all of that.

I’m hoping somebody picks up the SH3/4 recompiler work I did earlier and figures out why Naomi has so many issues with it, I expect it’s something stupid I did because I really don’t have much experience of the recompiler framework, but it had reached the state where it was of huge benefit to the Cave SH3 titles so I felt it worth submitting anyway. Sometimes a bit of teamwork is needed to take things further in cases like this (much of the best progress in 2017 was the result of teamwork, including the aforementioned Gaelco and PGM2 work) so I’ll keep my fingers crossed that there is somebody willing to take what I’ve done and improve on it.

I might see if I can work with Peter to extract the uncompressed graphics from Decathlete so the protection/compression scheme on that can be studied because it bugs me that we have what looks like it should be a relatively simple Sega protection scheme not figured out. We might also end up studying the ‘Taito Nostaliga’ and ‘Namco Nostalgia’ units, because TV games like that are likely to be a big part of MAME’s future (as they typically represent things that MAME is capable of emulating well) As licensed (home use) products based on old arcade games they’re also kinda interesting from a MAME point of view as they follow a similar path to that MAME has taken in moving from being primarily an arcade emulator, to covering home systems.

The truth is most of the things people probably want me to look at aren’t going to get looked, although a lot of my recent work does depend on who comes forward to run hardware tests etc. to help with the process. A lot of the things that still need figuring out can’t be figured out without somebody else working with the actual hardware, again, teamwork. People simply telling me that I should be working on x, y or z doesn’t work because most of what’s left these days isn’t that simple.

I think 2018 is likely to be one of those years where there are more internal changes in MAME than ones that end-users will immediately notice. That said, with the way the project is organized these days, and the way it’s open for anybody to contribute, we might just see some complete surprises, especially when it comes to improvements for the non-arcade platforms because it seems the tickle-down effect is in full-swing now and more people than ever are seeing the potential MAME has. Even if that doesn’t happen, internal changes are never a bad thing as when they’re happening it often means people involved with the project are reflecting on how limitations of the current system are hindering our ability to emulate trickier edge cases etc. and looking for ways to tackle such things to make it easier in the future.

It would surprise me if we don’t see more Decap work over the course of 2018, and so depending on what does / doesn’t happen there (which is almost entirely beyond my control) I might find myself involved in working with their results (especially if we see movement on something like the Taito C-Chip, because I’ve already done plenty of research into that)

It has been good to see more people becoming involved with MAME, going against the recent disturbing trend of people keeping all the code locked away in closed source emulators and trying to charge for them. If anything I do expect some of the more significant pieces of progress next year to come out of the blue from surprise sources, people who have become involved with MAME / attracted to MAME due to the expanded scope of the project. There is always work to be done in MAME if you have the skills / knowledge, and MAME presents the opportunity to put a lot of different skills to good use.

The only real negative I can take from the last year is how the likes of Retroarch seem to be gaining popularity while offering a really bad MAME experience due to the rather unfortunate lowest-common denominator user-base target it has. I still struggle to find any positives in that model, it’s like having a really invasive front-end that ends up causing various features of the emulator to not even work properly, and even then the front-end isn’t even good if there’s a large amount of content or for any kind of special cases. I guess I hope that people start to realise that, and see that the emulators as the original authors present them usually offer a better experience, at least for anything that’s still being actively developed. It might be a ‘quick’ way to get started, but with emulation you get what you put in, and it’s also starting to become an annoying source of false bug reports. I also still think it’s damaging model in terms of emulation development, because people forget how important it is to develop high quality emulation cores that work for all cases because instead they’ve got something that just glues partial per-case implementations together, none of which are actually 100% correct. For the long term future of this hobby it’s important to develop high quality code that can be reused with ease, and such a model discourages that, it’s the opposite of MAME. I’d also say that a lot of the recent (and very impressive) work in MAME has been on areas that just seem to get stripped away, or become non-functional when you use such software, and I think a large part of the future of MAME is the software we have that surrounds the core emulation. Anyway, that’s enough of a rant about that, let’s look forward to what 2018 brings.


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

Whatever you do,is welcome!
My compliments for your great work all these years!
I will never forget your concentration in 2 games,i really wanted,Little Robin,Heated barrel,and of course many many others,for the rest of Mame development!
My wishes for a happy new year,with HEALTH to you and all of your family, always the most important thing,in a human’s life,a job,for everyone,it’w hard thing to be unemployment,and a calm life!

I am left speechless. My respect and my admiration for your amazing work and your excellent articles. May 2018 be a good and lucky year for you and for everyone.

Do you take requests? The Atari800 driver is embarrassingly bad. Look at, for example, the flashlight in “Mountain King”. I can’t believe such a popular system has such a bad driver.

That type of thing is generally best handled by somebody who knows the system well coming in and fixing it. There’s really not much point in me trying to learn about the Atari 8-bits when there are hundreds of people likely with more complete knowledge in a far better position to fix it.

I guess that person hasn’t arrived at MAME yet tho.

In general, I’m not really doing requests tho, no, as I mentioned above, that’s really only going to happen in cases where people need somebody to work with when doing work and testing with actual hardware, for example if somebody trying to figure out protection schemes using the real machines / pcbs and asks if I can help them with it.

Haze, if you don’t like people using that horrendous RetroArch for Mame, maybe you could help with getting the Android build of Mame working. I’m sure people would rather use an official Android Mame port than that. Touchscreen support wouldn’t necessarily have to be put in straight away, most would probably use an external controller of some sort. Thanks for your brilliant work in Mame.

Again, I’m probably not really the right person to ask for that, I don’t even own a smartphone as I dislike touchscreens and value battery life as one of the most important features of a phone, but the entire industry seems to be moving in the opposite direction.

Since MAME is something I do for free I don’t really see the point in investing in a phone I don’t want to develop emulation for a platform on which I won’t be interested in using it.

I wonder if Peter and Morten will be tempted to take a look at Primal Rage this year (given their success with some of the other 90s Atari games, you never know). I’ve always had a soft spot for that one having played it as a kid, even if it is just Mortal Kombat with dinosaurs!

I think that’s fairly likely to happen

Good luck haze

Any news on the chances of gpu accleration

Not really seen any progress on it. All the people who have expressed an interest in doing so have been busy with real life.

Someone I know is interested in making some CHDs from his original CDs to add to IBM5170_cdrom. Any particular method(s) he should use or would it be better for him to send them to someone to dump properly?

Thanks for all your work and updates, Haze. I always find it interesting even if I don’t understand a lot of it.

Those naomi games would be great to get them up and running (Marvel vs capcom 2, anyone?), please and those other PGM titles, Lindbergh titles would also be awesome to get those games to work (after burner climax, wow),that would be amazing.

thanks Haze and the other tech emulator wizards for your many years of making great progress, hard work and making us all have the arcades at home, finally.

Can’t really advise on CD dumping myself, you might want to ask around the Mameworld forums or bannister.org forums instead.

Other PGM games probably aren’t happening, we were lucky that the PGM2 protection was weaker than PGM1, the remaining PGM1 games have really nasty protection.

Lindbergh isn’t going to happen at playable speeds in MAME in your lifetime.

AAAAAMEN for the last paragraph!

Finally someone that people listen talked about RetroArch and expressed the same thoughts I have about that project!

In the end I welcome its existence, being open source and bringing emulation to the masses, yet, this is were my list of positives ends.

We should not forget though that some of the original emulators-turned-to-cores devs, do support it and help it advance, as it gives them access to more host platforms and takes much of the I/O from their responsibility.
I have talked to more than one to (instead) bring their expertise in MAME, but there must be things they don’t like about it (and it’s the job of the team to see what it is and maybe correct it if you ask me – i.e. make things more attractive for devs that want to join? Or actively contact them?).

In the end, even if it doesn’t claim it anywhere, RetroArch (and libretro philosophy) tries to be an “externally modular MAME” (a concept MAME itself has rejected more than once). One that doesn’t even actively make the modules, but has created the backbone to actively take over ready make open source projects and plug them in.
I more or less hate it, but it simply solves problems and that’s it what counts nowadays.

MAME itself would help itself VERY much if someone finally makes a real widely available (i.e. properly on the respective platform stores) mobile friendly version and actively release it every month with the rest. The current attempt is still “weird” and fuels alternative builds that are also weird. This would boost the popularity of the project as mobile is the way to go these days.

> I wonder if Peter and Morten will be tempted to take a look at Primal Rage this year
I bought it in October last year, so we probably will, at some point :)

I Haze,
thanks for your incredible job with MAME/MESS all this time.
I am only disappoint with you about RETROARCH. Please, you must understand than a lot of people were been ignored in our request for a long time (shader, xinput, sync refresh, etc) and finally, we left MAME because we are tired.
I am a user of MAME from is first version, i go to other folks (groovymame, etc) trying to stay using MAME, but finally i retired over version 0.179.
I understand that my requests don´t be mandatory for MAME team, is your time and your work, and you spend it as you want.
Thanks for all, and have a nice year.

Bit confused by your comment, one of the areas in which MAME has massively improved in recent years is having BGFX and a whole bunch of shaders available. Some aren’t, but there are license issues with those ones (they’re GPL3, which is technically incompatible with MAME) Xinput etc. were added as soon as somebody who knew them well was available to add them, they work well, and with a fully supported Xinput pad you don’t even have the conflicting axis issue on the triggers that pads in Dinput compatibility mode use. The irony is that we actually switched to more advanced input modes early on but one of the things the idiots making custom builds kept doing was ripping them out and replacing it with Dinput again because Dinput allows for key injection more easily.

MAME isn’t going to hack games to run at the wrong refresh rate just because modern PC monitors can’t cope, it risks breaking the games, there are some that measure exact timings and fail in weird ways if they don’t match. Forcing refresh in other ways is going to do bad things to sound, distorting it or changing the pitch. If you’re moving to RA because it does things badly that are potentially introducing other issues then there isn’t much we can do.

When it comes to the OSD code, and support for the things you’ve mentioned at a ‘done properly’ level, I find the official versions of MAME to be streets ahead still based on the testing I did last week. There’s still room for improvement, yes, but the areas in which they can be improved are areas RA doesn’t handle either. MAME also has to be careful about things like image / design copyright, while some of the LR derived stuff doesn’t seem to care and happily bundles scanned images with the products they’re offering.

But anyway, I don’t want this comment section turning into all RA related stuff, I’ve said my piece, and explained why I don’t like it. I’m already having to try to deal with an increased number of false support requests from RA uses because the way they’ve done things is just plain wrong (eg I got a PM elsewhere earlier this week asking why none of the handhelds I’ve been showing off here work, and also a bunch over the last few weeks asking why the Naomi games just crash, even if they’re not meant to work in the first place and MAME tells you this but that isn’t obvious at all when running RA. Couple of weeks prior I got asked why the gear shifter graphics look so bad in Outrun etc. which again is a RA problem, and also why the plugins for cheats including the SF2 hitbox viewer were unavailable, which YET AGAIN is a RA problem with the way they package everything – or more to the point, fail to package it properly. Anything requiring the software lists, such as Give us a Break won’t work either unless you manually copy files in from the official MAME distribution, and even then you’re forced to go through an ugly & barely functional implementation of the MAME tab menu to mount the disk, which surely defeats the point of having RA as a frontend in the first place, at least with MAMEUI you can pick it from the actual frontend.)

So yeah, if we can not go there, that would be good, it’s causing enough of a headache already, hence why I felt the need to put what I put. I acknowledge that on mobile the official versions of MAME don’t have any real presence yet, so people have no choice, but on the desktop it’s an abysmal option.

Very nice write up. If things go a fast as the past 6 months of 2017 your next update will be huge. THANKS

@FSK: We feel your pain regarding the Atari 800 emulation; it’s probably the most well-known computer in the worst shape. However, nobody with technical knowledge of the system has come forward yet to take care of that driver the way Michael has with TI99 or Pernod has with the Acorn and BBC systems. We have a standing offer: if you know about and love the Atari 800 and its internals, we can teach you the MAME end of things.

Please Haze,
don´t be angry, i love MAME an all their staff (sorry to my bad english). I know that without MAME, emulation today could not exist, at least, at this amazing level.
As i say before, i stay with you from a long time ago, you are one of my mandatory read every time you make a report.
I am totally agree with you about where finally arrive all emulator based on cheat/patch per game code (famous games “work” well, rest of games, a mess of glitches).
Of course that software list is a fantastic solution (i think this idea was implemented by byuu at first place to stop massive bug reporting based on rom hacks that never can work on real HW). MAME have lots of good things, and i love all your work, but when i read something like “MAME isn’t going to hack games to run at the wrong refresh rate just because modern PC monitors can’t cope” this is the kind of ideas that make me left MAME.
I enjoy MAME and my old cabinet (Spanish Video Sonic with Antates CRT monitor) for years, but finally, when monitor finish his life, i can replace with something similar, and only have access to “modern PC monitor”. The point is, no one can tell “ok, not all the people can access to the original HW, we can put an option with a BIG WARNING about effects of use this option, etc, etc”. The answer was NO, and i understand when something that didn’t live analog area see like a bug the tearing. You are right, it is not accurate, at all, but i prefer a middle point. Finally, this problem (i suppose/hope) must be auto fixed with GSYNC/FreeSYNC (when i can buy one,i make another try with MAME)
Thanks for your time, your work, and for give me the opportunity to show my child the amazing arcade age.

Thanks Haze

Like always, very, ver interresting Haze.
You made good work in mame and you can explain clearly the different things we don’t always see in mame.
So a view for what’s happen in a year is a very good reading (i’m waiting for it !!).
So, thanks for that Haze

HAZE you should try and dump HYPER NEO GEO 64 :D is the last undumped system in Mame

@Kinof: Gsync and FreeSync both work perfectly with MAME to get perfect scrolling in all games.

@eljose HNG64 has been dumped for at least a decade. It’s just difficult to emulate because it was built according to the Sega Saturn philosophy: if its not powerful enough, add more chips.

Yeah I’m sure I’ve already said here countless times that I’m not going to emulate the HNG64. I’m looking to finish the CPU core for the IO MCU, that’s it.

As RB says, they just threw a whole bunch of chips in there, and never in any cases the usual versions of them, always ones with a ton of integrated components, ones not use anywhere else.

Combine that with a video system that is used inconsistency between games, and generally underused, giving little solid evidence for what quite a few registers do etc. and you have something that’s a mess to emulate. The whole thing is just stupidly over-engineered.

I think I made it pretty clear that this is exactly the type of thing I have no interest in working on unless somebody writes up a comprehensive hardware document based on extensive testing on the real hardware, and nobody seems to be doing that.

Your ongoing work is well appreciated Haze, and RB’s as well. I only wish I had the programming knowledge to help out with Atari or anything else, but that’s something I decided not to pursue in college outside of some first-level courses in the popular languages of the day (FORTRAN, C, etc). I never owned an Atari 8-bit computer myself, but many people around me did.

Also wish I had a GSync monitor to go with this GTX 970, but those are out of my price range (there was actually an update kit for the ASUS monitor I have, but was pretty much a “rip out the guts and replace them with these” sort of upgrade that was pretty much sold out besides once I found out about it. Would love to see how well MAME works with GSync.

So why is laseractive still unemulated?

Can you make 2018 less stressful for yourself? You need to take more breaks away from the keyboard. It will still be there when you come back. ;)

Happy new year.

>Other PGM games probably aren’t happening, we were lucky that the PGM2 protection was weaker than PGM1, the remaining PGM1 games have really nasty protection.


As far as your own tests went and besides the “imperfect sound” flag, the ones “working” according to PGM.CPP are free of issues/glitches? (Could you elaborate a bit on how Oriental Legend Special / Xi You Shi E Zhuan Super, Knights of Valour / Sangoku Senki and Knights of Valour Plus / Sangoku Senki Plus are affected by the unemulated protection?)

Also, just curious — is there a reason why the original “Sangoku Senki” name is being transliterated as a Japanese name for the original, Taiwanese versions (instead of “Sanguo Zhan Ji”, I mean). There’re some others as well, I’m sure you’ll know, but I thought this one was easy/popular enough?


Oriental Legend Special is a protection simulation, it isn’t trusted 100% people reported crashes, especially when the game was set to English, so it was demoted to NOT WORKING. As the protection supplies the region there is a chance that the English version was never released and is just buggy tho,

Knights of Valour / Plus you get stuck in some of the secret rooms apparently, so again, not working.

Translations, I don’t know, even IGS were weird and inconsistent with their translations and naming, eg. the internal name strings for Dragon World 2001 and Dragon World Pretty Chance are exactly those, even if the games were never released in English with those titles… The names used are names provided by people who know the languages.

I Arbee,
thanks you so much for the info about gsync/freesync, as soon i can spend money for buy some one, a check it.
P.D. Richter Belmont best vampire killer of all times (i feel so old XDDDD)

>Translations, I don’t know, even IGS were weird and inconsistent with their translations and naming, eg. the internal name strings for Dragon World 2001 and Dragon World Pretty Chance are exactly those, even if the games were never released in English with those titles… The names used are names provided by people who know the languages.

Well, there’s a pretty basic conceptual mistake in how currently MAME catalogues these games, so in case you care, I’ll throw in the pedantic note so that you can have the whole picture — Chinese characters are used not only in the different variants of Chinese, but also for Japanese, Korean, and other languages, as you’ll know. Whilst the graphic form of a Chinese character is the same in all these languages, phonetically they differ (as well as the meaning itself, quite often), and, consequently, their transliteration into Roman alphabets. So, in this particular case, you just cannot read –and transliterate as– “Sangoku Senki” unless you’re using Japanese, which you obviously aren’t since the game is Taiwanese (“Sanguo Zhan Ji” seems to be the most common transliteration for the game’s name outside MAME’s surroundings.)

In an entry like this:

“Sangoku Senki: Yi Tong Zhong Yuan”

…there’s literally a mix of Japanese and Chinese, which makes no sense. “Sanguo Zhan Ji: Yi Tong Zhong Yuan” should be better (though I’d actually ask someone proficent to verify this particular subtitle as well as the other Chinese names in the driver.)

Another matter altogether is the Japanese versions (which came later) of this series, which indeed is read/spelled “Sangoku Senki” in Roman alphabet. But that’s because, at that point, it’s Japanese which just happens to keep the original characters.

Hope this somehow serves; the mistake is spreading quite a bit due to MAME’s conventions.

(Is it really possible to get an account at Bannister these days? I never seem to get the mail with the final validation.)

@Recapnation: Did you email Richard as instructed? We seem to have a lot of people miss that step because it’s fairly unusual.

Just a happy 2018 from old prophet of retrogames days past.

Keep up the great work on MAME, as always.

Arbee — just did it through the web form; I somehow missed that. Thanks.

Leave a Reply

Your email address will not be published. Required fields are marked *

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.