David Haywood's Homepage
MAME work and other stuff

The Millennium Bug

April 13, 2012 Haze Categories: General News. 7 Comments on The Millennium Bug

Silver Millennium by Para has sat on the MAME ‘Most Wanted’ list for a while now, but always seems to sell for Crazy Prices.

Running on hardware which I’ve found is derived from Tumble Pop bootlegs much like ‘Cross Pang’ and ‘Bestri’ from F2 System, this Korean shooter appears to be an original game developed in Korea. The actual hardware looks just like any other cheap Korean game, so we were rather lucky when Bonky0013 found out he had a PCB of it and dumped it!

As mentioned, in recent times when it sells it usually sells for crazy prices (>$1000) and production values are higher than most Korean games, although not THAT high, maybe there is some history behind the game causing the high prices which I’m unaware of. That said it is known to have been listed for $200 back in 2007 without selling at all, so either people have decided it’s a lot rarer in the past 5 years, or caught some kind of Millennium bug ;-) It’s possible the reserve price on the $200 one was just a lot higher tho.

The game has ‘adult’ content, although I’m not sure when it gets shown or if it requires a dipswitch change like the language does. Images can be viewed in the test mode.

The game mechanics are closer to older shooters, with fast aimed bullets, although instead of a lives system the game features an energy bar which is depleted near instantly if you hit a big swarm of bullets. I’ve done a video of the gameplay from MAME in which you can see the intro, complete with hilariously bad translated text and footage of the first two levels.

Hardware doesn’t do transparency effects, images are flickered on/off per frame, the game does this a lot when the various girls appear midlevel and such. The video above makes it look transparent as a real monitor would because I’ve frameblended it to 30fps for optimal YouTube viewing.


Content not available.
Please allow cookies by clicking Accept on the banner

The sound unfortunately isn’t great, the YM2151 at least allows for proper music, but the rest of the sound samples are played through an OKI6295, and the quality of them leaves a lot to be desired.

Clocks are not verified, nor is the framerate / refresh rate of the game or the overall audio balance.


Silver Millennium Silver Millennium

Silver Millennium Silver Millennium

Silver Millennium Silver Millennium

Silver Millennium Silver Millennium

Go to article.. »

You Me (You I?!)

April 11, 2012 Haze Categories: General News. 4 Comments on You Me (You I?!)

UME (Universal Machine Emulator) target. Just drop these files into the /src folder of a MESS tree from the GIT on the left and compile with ‘make TARGET=ume’ and you’ll have a combined build* Not much changed from before, just cleaned up a few bits which were no longer necessary. I’ve asked again if this can be put in the official MESS SVN tree, because I’d really like to be able to build a 0.146 version come the next release and say the sources are entirely untouched.

I decided I prefer UME over UNE, simple because it sounds like ‘You+Me’ and that’s rather appropriate for something which is the combination of two projects. Amusingly enough if somebody did a UI build it would be “You Me You I”

In saying that I notice Robbert has been putting some Arcade games in his latest MESSUI builds, but I think it would be better if he just compiled a UI version of this target, although it might require some code tweaks. That would give a build with Arcade support, but without annoying people who want the pure MAME / MESS builds as well.

Of course ****UI is horribly broken anyway, and probably shouldn’t be used, but some people don’t want to drop it.

* although at the time of writing you’ll have quite a few validity fails, but those happen in the regular builds too.

Other news, continued to look at the Fruit Machines, summary follows:

Electrocoin: identified where the VFD data is written on Pyramid, Sphinx, Pennies from Heaven and Labyrinth. Doesn’t seem to be one of the supported VFDs (it’s writing mostly ASCII and in the first case doubled up letters) but I’ve redirected it to the commandline so we can see the errors. Half the games complain about a 10MS TIMER (which should come from the Z180 afaik, core bug?) the others complain about COIN TAMPER. Not tried hooking anything else up because the games are stuck in a reboot loop because of said issues, so wouldn’t be interesting yet.

Scorpion4: added hookups for the reel writes and opto reads, allowing the games which were complaining about REEL 2 ER to pass that test and usually fail on a RAM test instead. Couple of games continue to run in the background anyway tho, will probably see what the RAM fail is all about then try hooking up some lamps.

ProConn (Project Coin): identified what should be the VFD port, it writes text in a few games, but garbage in the majority, not sure why… the board has a whole stack of Z80 peripherals with a weird hookup, so it’s possible there are errors anyway, doesn’t look like any of the stuff is extensively tested

Global Games Stealth: James found the VFD, see the update on his AgeMAME site.

‘JPM 7’: I think this is actually Pluto 6, It’s Coldfire based and behaves like the other ‘Pluto’ stuff otherwise, which would fit the profile. Not actively going to work on it.

‘unkpcp.c’: Pretty sure these are ACE System 1 sets, should move them. I did a bit of poking around with ACE System 1 but have no progress as such to report.

‘astrafr.c’: Seems to be an earlier revision Pluto board, I’d guess either a custom one made for them or something between Pluto 1 and 4. Actually there seem to be at least 3 different variations in here, so could be all of them, or just the boards were configured differently.

Also looked at Epoch, but I hate the H8, and their custom chip could well be a CPU in it’s own right, no progress to report there sadly.

I’ve also continued to sort out and attempt to pair up various sound ROMs and the like, situation isn’t pretty for a lot of systems.

Finally, for anybody who thinks these things aren’t worth emulating and should be forgotten about, I challenge you to look at the following page and draw the same conclusions

Mr. P’s Classic Amusements
This guy collects, and operates the classic machines in his arcade, and if you look at them, and the enthusiasm for them you’ll see that they’re every bit as much classics as Pacman or Street Fighter and many of them are exceedingly rare these days (some probably already lost forever) Unlike arcade games these have a more serious problem, the games are useless if separated from their cabinets, and storing unprofitable or weaker playing machines isn’t economical so they’re more likely to be destroyed whereas an arcade PCB might be unlucky enough to have it’s cab destroyed but the PCBs are usually saved and the cabinets usually served for decoration purposes only, and weren’t critical to operation of the games. He also has a whole bunch of videos on YouTube demonstrating many of his machines. These is even a video of the earlier mentioned Sphinx, complete with classic 8-bit tunes. Many of the machines are genuinely entertaining and works of art unlike the soul sucking Vegas ones which offer nothing but a chance to get lucky.

So yeah, things are being looked at all the time, and while we might not have reached tipping point as far as working sets go I still consider this a very worthwhile venture, and an extremely important one.

Go to article.. »

There’s A Pretty Good Chance…

April 7, 2012 Haze Categories: General News. 10 Comments on There’s A Pretty Good Chance…

Smitdogg dumped the Dragon World Pretty Chance kindly sent by ‘Merlin’ who offered it for working with in the Demon Front post below.

It’s an IGS027A 55857F type chip which means we can almost certainly use the same technique as was used for DoDonPachi 2 to read out the ARM data meaning there’s a pretty good chance this one will be the next PGM title emulated.

For now I’ve hacked things up to boot


Dragon World Pretty Chance

This is the only shot I consider SFW, the rest is rather more suggestive (I’ll put some pics in the comments)

Like Dragon World 2001 it doesn’t get ingame without the ARM emulated, so only the attract intro runs for the time being. The game appears to use a modified version of the Dragon World 2001 codebase and was released exclusively in Japan with the overall theme changed to make use of licensed adult images instead of the traditional backgrounds.

Go to article.. »

Get Over Here!

April 5, 2012 Haze Categories: General News. 21 Comments on Get Over Here!

Emulating Fruit Machines is in many ways a process quite different to emulating a video based system. With video based systems you tend to get obvious large ranges of data writes relating to sprite lists, tilemaps, palettes and the like which usually allow you to make easy headway with the drivers, leaving the trickier more intricate IO details for later.

Fruit Machines are the opposite way around, they’re primarily IO, and if you don’t get that right, you don’t see anything. Almost everything is driven through ports, data often doesn’t get written at all unless status bits are correct, and you’re dealing with interrupts from multiple sources rather than having an obvious ‘trigger every frame’ vblank interrupt.

Thankfully there was a lot of part reuse, and for the majority of cases the boards are stacks of off-the-shelf components, for which documentation is available, and many of the needed components are already emulated in MAME, although not always to the required level.

One of my initial goals is to at least get everything doing *something* Allowing sets to run their ROM/RAM tests is good for sorting things out, and providing a base for further progress to be made. If they test other ROMs like their sound roms that’s even better because an awful lot of these fruit machine dumps are missing their sound roms, or have been paired up with the wrong ones, and it helps to know.

One of the systems I’ve been looking at a little bit lately is the Scorpion 4 one, it’s been emulated elsewhere for a while, and uses a 68000 based processor which makes it easier for me to work with due to familiarity. It’s not all plain sailing however, the 68000 it uses is actually a 68307 which means it has a number of onboard peripherals in order to simplify the actual PCB designs. These include a timer unit, serial unit, custom interrupt controller and hardware for ‘memory protection’ In addition there are other similar peripheral chips on the actual board, all of which need emulating properly.

Scorpion 4 Motherboard (source unknown)
Scorpion 4 Motherboard

It’s quite a cute looking board with the colourful dipswitches, and as you can see there are only a handful of actual components on there, with the 68307 doing the majority of the work. All the additional hardware driven by the board plugs into the various ports positioned around the edge (lamps, reels, hoppers etc. all marked near the connectors) with the game card and optional graphics expansion board going in the slots near the CPU. One thing to note, the sound chip (a YMZ280B) is on the game cards, odd design choice, but there you go.

I’ve spent the last couple of days stubbing up support for some of these and hooking up devices and peripherals that we already emulate to the driver, including the VFD ‘display’ which is on one of the ports. Quite a few things, including the timers and interrupt generation are hacked up for now, but it at least gives up a few pictures of the system booting and testing the game ROM + sound ROMs. I also had to fix up an issue with the YMZ280B data readback, which could have potentially crashed anything else in MAME using that chip and attempting to read the ROM data!


Fever Pitch
Fever Pitch

Fever Pitch

Fever Pitch

Fever Pitch

Fever Pitch


The majority of games have a 4 letter manufacturer assigned game code, and 8 digit ROM code associated with them which matches what’s printed on the ROM labels. This is important because there are many, many sets for each game to comply with different regulations, or use different additional hardware.


Lucky Balls
Lucky Balls

Crazy Climber
Crazy Climber

Tetris
Tetris

Club Class
Club Class

South Park
South Park

Obviously not much to look at, and if you want to play these things you’re still best off using the existing emulators for now, but it’s a sign of some progress being made. Most of the sets which boot this far complain about the reels, or meters, which I believe should be the same as the older Scorpion 2 platform, meaning much of the code is already there.

Roughly half the games in the driver don’t at all boot yet, they appear to be communicating with a different kind of VFD, or don’t use one at all (it isn’t actually visible on many of the cabinets anyway, but provides useful diagnostics information) Quite a lot complain about missing sound ROMs, or bad sound ROMs, although having them boot this far has allowed me to sort out a good number of the ones which were just being loaded incorrectly.

Some people still seem to be under the impression that these things can’t be emulated further than this, but if you’ve been following MAME you’ll have seen several recent additions of non-video games. Robbie‘s work on Janken Man for example shows a non-video game using the MAME layout / artwork system. ’30 Test’ is another recent addition along similar lines. The existing system might have it’s limitations but is clearly capable of providing the basic framework needed for any non-video based system as long as it isn’t depending on physical elements which none of the fruit machines really do.

The Scorpion 4 motherboard did actually have a video expansion available for it, known as the Adder 4. This adds an additional 68340 processor (similar to the 68307 but with more complex peripherals and a 32-bit core like the 68020) Only one Adder 4 game is fully dumped (Skill Dice) but that will be an interesting target in the more traditional MAME sense once the basics are all emulated.

I’ll probably continue to work on this for a while (ideally I’d like everything in the driver to display *something*), then possibly bring another driver or two up to a similar level. Progress is admittedly slow (it’s more or less only myself and James Wallace looking at any of this stuff) but I’d like to see various drivers getting to a stage where there are enough good visual indications if changes being made are correct or not because this will make it easier for others to get involved if it takes their fancy.

Go to article.. »

The Unknown Derby…

April 2, 2012 Haze Categories: General News. 15 Comments on The Unknown Derby…

I mentioned ‘Super Derby’ in my previous update, which was a 90s Horse Racing gambler from Playmark and it just so happens that a similar game has just shown up too. Obviously an earlier production, and originating in Japan rather than Italy it lacks any form of title screen and we don’t know what it is.

Paul Swan dumped the ROMs from an unknown PCB (high quality pics on forum post) and ‘hap‘ has been working on the emulation (as you can see if you check the MAME GIT link on the left) however it would help if somebody knew what it was actually called!

The PCB is marked EFI TG-007, and it uses an 8085 CPU (like Polaris) but there don’t seem to be any real hints at who made it, or the correct title.

I’ve uploaded a video of the emulation in action, if anybody can match it up with a flyer, or has further details on the origins of the game please leave a comment here, or on the YouTube video


Content not available.
Please allow cookies by clicking Accept on the banner

Go to article.. »

Current State of Combined Projects

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.

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.

Close