David Haywood's Homepage
MAME work and other stuff

UME 0.146u2

July 2, 2012 Haze Categories: General News. 32 Comments on UME 0.146u2

UME (logo by JackC)

UME (Universal Machine Emulator) combines the features of MAME and MESS into a single multi-purpose emulator. The project represents a natural course of development for the emulators which already share large amounts of code and is part of an ongoing effort to unify development efforts and provide a single emulation platform for users and developers alike.

This is based on MESS SVN revision 15525 (GIT Mirror)

JackC has refined the logo a bit based on the original idea, several alternatives were provided, see forums.

I’ve decided to stick with doing a single package containing source + both 32-bit and 64-bit binaries now, it’s a larger download but less confusing than requiring users to download separate resource packages etc.

The 0.146u2 release can be downloaded here.

As always QMC2 is the recommended front-end.

The changes from MAME 0.146u2 can be read about here
The changes from MESS 0.146u2 can be read about here

General Release Commentary

On the MESS front the last 3 weeks have been fairly quiet, low level rumblings, some important progress, but nothing major to write home about. I’m currently trying to rebuild my collection of Saturn images to match the software lists in order to look at fixing up some issues there if possible (I’ve asked a few people for help in finding a couple) Doing this will allow me to start refining the lists and replacing images with better quality ones, although for now etabeta has been doing some general cleanups of Developer / Publisher / Release Year information in said Saturn lists already (as well as many others)

There have been a couple of fixes made to the Super Cassette Vision (svc) emulation by Wilbert Pol which are of note, including a CPU core fix which corrects the timer in Boulderdash (you can observe the bug in this YouTube video) Rather topical, and as it happens, a version of Boulderdash I haven’t actually played.

The PCI slot code has seen some work from Micko, which should eventually help with the emulation of various PCs (and of course eventually be of use in MAME for emulating more PC based platforms) I imagine one of the early goals will be to allow the user to easily add a VooDoo card when running the MESS PC driver, using the VooDoo emulation from MAME although I do fear for performance, the only similar configuration in MAME (Pentium level x86 + Voodoo) is Funky Ball and that runs at a far less then desirable framerate. There is plenty of room for performance however, an x86 recompiler could work wonders.

A fair amount of the remaining progress in MESS is on systems I’ve never heard of, although be sure to check out the changelist and SVN logs because something might catch your eye.

MAME this time round has been more interesting, Angler Dangler has been on of the few remaining games in the bracket of ‘shown on Starcade, but not emulated in MAME’ but with the u2 release that situation has finally changed, although for now only the Japanese version with the highly imaginative title of ‘Fishing’ has been located and emulated. We’re seeing a steady flow of Data East Cassettes being dumped now, with the original Hamburger (from which the long emulated Cook Time bootleg was made!) appearing in the previous update.

u2 also sees a first pass at Q1000 sound emulation from Phil Bennett, this gives preliminary sound in a number of Eolith and Limenko games as well as Semicom’s Wyvern Wings, which is rather famous for using ripped Metallica midi tracks for music, and while the emulation still has some fairly serious issues with volume balance, and missing envelopes you can just about make out some bits and pieces. There was a last minute fix from me to improve the sound sync in some Eolith games as well, so if you’ve already tried an SVN build from when it was first added you might want to give it another look, Candy Puzzle actually sounds rather good. One word of caution, Phil hasn’t hooked the new code up to the See See Find Out or Eolith Ghost (Balloon & Balloon) drivers yet, so don’t expect sound in those just yet (Pang Pang Car might also be using the internal ROM, which isn’t dumped)

The System 16 version of Fantasy Zone 2 is also supported officially now, in an unmodified form, unlike the FZ-2006 multi-game hack/bootleg which had been supported for a while. The ROMs used are those which have been used on various bootleg conversions, but are almost certainly the same as used on the official boards. I posted the code needed to get this running with the PS2 data file a while back. The FZ-2006 bootleg is still kinda interesting tho it allows you to run the Time Attack mode for the original Fantasy Zone.

More regressions have been fixed from the previous code overhaul too, and we’re starting to look in pretty good shape again now, Cubo32 stuff works again for example, INP playback is fixed in a couple of drives where it broke etc. My only real remaining niggles are the crippling banking performance which has a severely negative effect on The New Zealand Story during transitions, and the likes of Wardner on random levels.

Amongst the various regression fixes was a fix I put in to allow the mahjong titles in the Pinkiri 8 driver to boot again, this is a driver I’d really like to get working, but the hardware appears to have been severely under utilized making some of the registers unclear. Sprite heights of all things are still proving to be very illusive, I suspect they’re grouped like the widths seem to be, but I can’t find an appropriate table! I could hardcode the heights and the games would work fine but I’m hoping Charles MacDonald can run some hardware tests at some point, he’s worked with the boards in the past to extract the internal roms.

The u2 CHD code should also be better, producing the same results across platforms now; previously there was an issue whereby the Huffman algorithm used ‘qsort’ which produced different results almost everywhere, luckily that only affected Laserdisc and HDD CHDs, CDs don’t use it by default.

Offroad Challenge works in u2 too, thanks to some TMS32031 CPU bugfixes from Daniel Filner. It’s a typical Midway racing game, same basic hardware as Crusin’ USA.

A couple of the hardware upgrade kits for various boards are now supported too, things like the Space Invaders Multigame and Super ABC Pacman kits were sold commercially, and it has been decided that they’re eligible for support in MAME.

Luca also figured out what was needed to make a couple more Mahjong games work, the original version of classic racer TX-1 is now functional, and a bunch more Midway hard disks revisions are now recognized for games such as War Gods.

So all in all the u2 release has been a productive one and unusually MAME has seen the greater amount of activity, be sure to check out some of the improvements for yourself, either in these UME builds, or the individual projects.

Go to article.. »

Quick, Call A Plumber, There’s Crap In My Pipes….

June 12, 2012 Haze Categories: General News. 18 Comments on Quick, Call A Plumber, There’s Crap In My Pipes….

Eolith.. They put out some games with were rather respectable, the Hidden Touch games, Crazy War, they were even responsible for The King of Fighters 2001 (love it or hate it) But they also put out some titles which weren’t quite so good.

The Back of the Flyer for the game I’m about to feature here is enough to raise a few giggles alone. The list of Special Features presenting a list of some of the most common and meaningless features found in any puzzle game in charmingly bad English and the story is quite absurd with talk of Golden Pipes falling from an “Unidentifiect Flying Object”..

It doesn’t end there tho, let’s give you some screenshots of this one…

Linky Pipe Linky Pipe

Linky Pipe Linky Pipe

They do say sometimes it’s all in the name, and the observant of you will have quickly noticed the name of the first character you encounter, eloquently christened “CRAP”

Now, maybe that was meant to be Crab, I don’t know, it doesn’t really much look like a Crab, it does actually look a lot more like a bright blue .. crap .. possibly a snake at a push, either way you can’t help but think of it as a good indicator to the overall quality of this game.

There are a good number of games where you’re linking up pieces of pipe in a pit, Taito’s Cachat, or Atari’s (unreleased) Sparkz are better known examples; there were even a handful I covered when looking at Saturn games for one of the Ultimate MAME / UME articles, however those games are all better than this in every conceivable way.

It’s not really easy to explain exactly what’s wrong here beyond the basic mechanics they’ve decided on for the puzzle game just aren’t fun and any flaws in those mechanics just seem to be hacked around in the most crude and obvious ways, to make matters worse the whole thing just seems very rushed as well, almost unfinished.

It’s a 3 button puzzle game, one button rotates the whole 2 unit block which is falling, and each of the other 2 buttons rotate each individual unit of that block which is a fiddly control system on it’s own. Rotating when against a wall also often changes the behavior causing further confusion.

The idea is to simply link the ‘pipe end’ pieces up via pipes, create combos, and generally do things faster than the CPU opponent in order to fill their water meter before they fill yours, and that’s all there is to it really. Now the point about things feeling hacked in. Naturally due to the game mechanics you will end up with pipe pieces in the pit which you simply can’t link. Every now and again the game will decide to drop what can only be described as a ‘cursor’ block, it’s a bit like a target, it doesn’t collide with anything, and you simply have to drop it at the bottom of the column you want to remove a piece from. This isn’t optional, if you drop it somewhere where there is nothing to remove it will just keep repeating until you do; it makes no sense in the context of the rest of the game and just feels like a hack to overcome a problem they didn’t consider in advance.

I’ve played worse Puzzle games, but fiddly controls, uninspired design, poor presentation (aside the backgrounds, which are actually fairly attractive) means this is probably one best passed up on.

I can’t really judge the sound at this point, because until literally half an hour ago the Eolith driver had no sound in MAME. Phil B. has checked in preliminary sound support, but for now it’s a few random noises and misplaced sound effects, not something to call judgment with ;-)

Btw this was actually added in the u1 release, but would lock up when trying to start the game. This appears to be a result of the first 2 dipswitches, having them set incorrectly causes various issues; which again makes things look a bit rushed assuming the same issue is present on the real hardware. (not confirmed yet)

Go to article.. »

UME 0.146u1

June 11, 2012 Haze Categories: General News. 5 Comments on UME 0.146u1

logo by ALEXGIZH

UME (Universal Machine Emulator) combines the features of MAME and MESS into a single multi-purpose emulator. The project represents a natural course of development for the emulators which already share large amounts of code and is part of an ongoing effort to unify development efforts and provide a single emulation platform for users and developers alike.

For more information on UME in general see the previous update (0.146)

The 0.146u1 package can be downloaded here. This includes 32-bit and 64-bit binaries, the source, and support files (software lists etc.)

This is based off MESS SVN revision 15445 (GIT Mirror) (UME was promoted to being an official target in the SVN with the 0.146 release)

all builds are compiled with
“make all TARGET=ume”

the source is otherwise untouched and includes all changes from MAME and MESS 0.146u1 (MAME 0.146u1 whatsnew can be seen at mamedev.org, the one in the MESS SVN is out of date) MESS changes can be seen in docs/messnew.txt

If you want to use a frontend then QMC2 is recommended, see the news posts below this.

General Release Commentary

There is a valididy check fail (ume -validate) on some ad4* sets, this is inherited from MAME 0.146u1 and was fixed in a post u1 revision. This is however harmless.

0.146u1 is the first official public build to play the Dragon World 2001 and Dragon World Pretty Chance games featured in a previous update here. It also has a fix from hap which allows Taito’s Racing Beat to be somewhat playable, and further extend the mystery of quite what happened to Taito racing games after Continental Circus (1987) and Chase HQ (1988) because their later 2d scaler efforts all look amateurish in comparison. There are also some card / variety games supported thanks to Luca and a strange upside down Space Invaders variant called Space Ranger which was unearthed by Marcello Mancini.

Pong has also made an interesting return, albeit in a non-working state, but it could be a sign of things to come, with actual lower level simulation of components on the non-cpu based games. (note tho, Pong is a simple example and struggles to get 80% speed on my C2D with this level of emulation/simulation)

From the MESS side there has been a lot of work on obscure systems across the board, including a fair amount on the ‘Wang Professional Computer’ systems from Curt Coder, support for various Apple II peripherals from R.Belmont (including the SAM speech card), improvements to the emulation of some pirate mappers in the NES drivers from etabeta and refinements to the software lists from a whole bunch of people.

So overall, solid improvements across the projects, and a fair number of bug fixes / regression fixes from the likes of hap thrown into the mix too (metro.c games should be working again for example)

Go to article.. »

Emulation Status

May 31, 2012 Haze Categories: General News. 167 Comments on Emulation Status

Right, I wanted to do a refresher on tasks in MAME / MESS in need of attention so that people were mostly informed / updated on the current state of various drivers and what needs doing to them.

However, I’m going to start off with the reverse approach. Use the comments to ask me about the status of things instead, and I’ll try my best to explain where the current issue lie. Please read any existing comments first because I *will* delete duplicates and off-topic material without warning.

(I make no promises to work on anything mentioned, this is NOT a ‘what should I work on post’ it is simply an experiment to spread knowledge and gauge interest because it isn’t always obvious to people who haven’t worked on the code what the issues are)

Go to article.. »

QMC2 for UME

May 24, 2012 Haze Categories: General News. 44 Comments on QMC2 for UME

RenĂ© (QMC2 Author) was kind enough to post 2 test builds of the QMC2 frontend which have full support for the UME build posted the other day. These links were posted in the comments section of the previous article, so I’ve copy+pasted them here.

Installer: http://qmc2.arcadehits.net/Win32/qmc2-win32-0.37-SVN-r3937.exe
Archive: http://qmc2.arcadehits.net/Win32/qmc2-win32-0.37-SVN-r3937.7z (you’ll have to right-click ‘save as’ on this one)

Installer: http://qmc2.arcadehits.net/Win32/qmc2-win32-0.37-SVN-r3927.exe
Archive: http://qmc2.arcadehits.net/Win32/qmc2-win32-0.37-SVN-r3927.7z (you’ll have to right-click ‘save as’ on this one)

QMC2 is the recommended frontend for MAME/MESS/UME, and has an emphasis on ensuring the full functionality of the emulators is easy to use rather than having flashy graphics and the like.

I don’t use a frontend myself, because I still prefer to operate / develop the project from the Commandline, but for those of you who do want a Frontend it’s a good choice, and doesn’t have the stability issues which plague recent MAMEUI/MESSUI builds, although I do just think of “Queens Medical Centre” whenever somebody mentions it because that’s what most people around here are talking about when they say QMC ;-)

Go to article.. »

Praise Where Praise is Due

May 24, 2012 Haze Categories: General News. 3 Comments on Praise Where Praise is Due

A lot of people say I can be overly critical of Mamedev and some of the ways they go about things these days, and while personally I feel any criticism is warranted it is true I often have more negative things to say than positive.

However, I’ve always tried to highlight in equal measure times when the development process works well, times when really impressive work has been done and show examples of where the way things are being done really helps people.

Recently ‘hap’ has stepped up to the mark and has been doing a lot of work on smaller less well known / less popular systems which is something I’ve always seen as vital to the progress of MAME because it shows a genuine interest in the emulation process. If you’re following the GIT Mirror, which I’ve pointed out before is an invaluable resources, you’ll also see he’s adopted a development pattern which is one I’ve always strongly encouraged, that being to submit small amounts of progress on a regular basis.

Some argue that regular submissions clog up the changelog, but in reality they have one major advantage, it allows people to follow Mame development, and better understand Mame development by seeing how a driver progresses from a non-working state to something which is actually functional.

While the Initial submission put in by Kale after a couple of days of private work did have a lot already done compared to many skeleton drivers it didn’t work, it just crashed and reset after a few seconds.

Subsequently there were a couple of cleanup submissions as well as Input Fixes (so that it could be coined up and started), ROM Banking Fixes (to stop it crashing), Layer Enable Fixes (so that the playfield vanishes when the title / highscore are displaed), and Preliminary Colour RAM Hookup (as a first attempt to fix the colours so that the text layer wasn’t just monochrome)

This is much better than a single opaque submission because people can learn from it, they get a better understanding of how decisions have been made, the order in which progress has been made, and also the insight that driver development really is broken into several simple steps, not a brick-wall process nobody could hope to achieve.

When I was doing this there was no public mirror, but I like to think the devs I invited to the team at the time were following and learning from it back then too, and likewise that there is still enough public interest for people to actually be following the GIT and thinking ‘I could do that too’

So, as I was saying, I’m glad to see ‘hap’ adopting this approach because I think it only serves to benefit the project in the long run. Furthermore it sets a good example, because the very best devs are the ones who don’t stick to just a single platform which interests them, but instead put in work where it’s needed and the team absolutely needs more like that :-)

The game, if you were wondering is a nice little 8-bit video pinball game called Flipper Jack, rather rare.

Go to article.. »

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.