Various – Fruit Machines
Obviously the various fruit machine platforms remain an interesting and realistic target for MAME, small bits of work on them have been done over the past year or so.
For many of the later 90s ones it’s a case of having to emulate all the on-board peripherals properly for the CPU variants they use. The manufacturers of these things chose CPUs with integrated features such as custom timers, I/O ports, memory protection and the like to provide an all-in-one solution for many of the things that would otherwise require additional components. In those cases the main ones used are the 68307 (for Scorpion 4), the 68340 (for the Adder 4 video board, Astra, Pluto 5, MPU5) and Coldfire (‘jpmsys7’ which is likely a later Pluto board, and Scorpion 5)
Scorpion 4 primarily proper payout logic hooking up, it’s actually not a bad driver otherwise, many games work as expected even with the bare bones 68307 peripheral implementation which has little grounds in reality right now.
The earlier platforms are a little messier, running on more traditional CPUs, but with a wider variety of external hardware, and modifications. Something like MPU4 was used by many many manufacturers, including third parties with cloned boards, and has annoying protection systems on many of the games to boot (most of which are understood well enough to hack around these days, but MAME hasn’t quite caught up with current knowledge) For some reason a number of the base MPU4 games just crash too, for reasons unknown. I can only assume they’re not happy with the interrupt logic, banking logic, or how some other peripherals are behaving. The MPU4 video expansion has always been problematic, with the CPU comms barely holding up (even less so after the CPU rewrite) and further annoying scrambling on questions, not to mention many many games missing their question roms altogether, quite a sad state of affairs really.
Things are getting there, slowly, the Electrocoin hardware (Labyrinth) shows signs of life, running the proper game logic, but needs Z180 fixes (I think) as well as the proper reel types adding, and the correct sound chips hooking up.
Some of the earlier ones haven’t seen much attention at all yet.
I find it a bit of a shame that there aren’t more devs helping out with these, but I guess it can appear a daunting task due to the sheer amount of work involved.
Beyond that there is of course the need for a better presentation system, layout editors (or at least import tools) and the like, but really it would make more sense to get all the systems running properly first, then see what state the rest of MAME is in.
I can see why these aren’t for everybody, but I still find them to be a fascinating bit of our history / arcade culture, showing how things evolved.
Various – Improving what we have
The focus of most of this write-up has been interesting things that really can’t be considered ‘working’ in any form at all right now, but that is of course only a fraction of the work left to be done. You notice it more in MESS due to the vast software libraries any given system has to run, but throughout both projects there is room for significant improvements to the emulation of key systems.
The problem is, as I’ve mentioned before, quite a lot of the time the last 5% of the work on any system requires a dedicated expert, and possibly rewriting 90% of the code to be able to handle the extreme cases.
To Do: more more more!