Fruit Machine Emulation

Emulation of Fruit Machines does not differ much from emulating a Computer System or Games Console or similar. On a “physical” level, the major difference is that as well as emulating one or more electronic circuits (including one or more Microprocessors) as one would for most Computer and Game systems, there is also a need to emulate the electromechanical elements of such machines (including coin acceptor devices, reel mechanisms, payout devices and illumination, to name but a few).

Obtaining information about the operation of the electronic hardware is no more difficult than obtaining information about other types of systems, but is a significant nuisance nonetheless. This is due to the use of custom hardware (ASIC devices) and a lack of access to datasheets for some of the remaining hardware due to perceived commercial and/or security concerns.

The major difference, however, appears to lie in the controversy which can be found within the community built up around the emulation of machines which are designed for financial speculation. Often based (if at times tenuously) around the moral and legal aspects.

Brief history of FME

Knowing very little about the internals of Fruit Machines, I hadn’t made the mental leap of realising that they could be emulated like any other microprocessor-based system. I first discovered that emulation of Fruit Machines was possible when I came across sites such as “Maroney’s Web Hovel” and “FMEWorld” (Both now absent from the www) and the “Fruit” software developed by C J Wren. Originally the software was on sale for GBP50 (or GBP100 with the inclusion of integrated layout design toolset) and sported over a half-dozen MPU3/4 classic layouts. Shown below is a prototype produced during the early development stages of the emulator:

First Fruit Layout

One of the original "Fruit" emulator layouts - Barcrest Nifty Fifty on MPU4

Controversy the Firste

There was also a demo version of the emulator offered. This offered a limited number of plays on each execution, and always started from a pre-configured power-on state. This demo version was hacked to remove the limitations, and private licensed copies also leaked which led to the beginnings of the Fruit Machine “Scene” (a community started as an MSN group). Later on, the software was further hacked to enable the “premium” layout editing tools, although these versions were closely-guarded and the community was actively discouraged from making use of them, in essence by being insulted and told that they lacked the technical knowledge to use them. This was the first of many such “leaks” and “hacks” and became a staple part of FME life. Interestingly, I later learned that although there were many layouts released, that actually quite few copies of the emulator were sold, and not one copy of the design tools was ever sold legitimately.

Cease-and-desist

Early on, C J Wren is believed to have received a cease-and-desist order from parties working on behalf of Barcrest as he was essentially profiteering from their Intellectual Property. As a result, and also as a result of the leaked/hacked emulators, he chose to release the emulator for free and without any layouts, thus removing the for-profit element and himself from the distribution of copyrighted material. Although there was not much, legally, that could be aimed at him further in this regard, he remained wary of the game manufacturers.

Realistic Layouts (or DX “Deluxe” layouts)

Gary Pearson first coined the idea of using bitmaps in the emulator to create authentic-looking machines and persuaded Chris Wren to add that functionality to newer versions of the emulator. Originally, he made use of a loophole to achieve this – the emulator did support bitmapped lamps, and supported adding static bitmaps, and Gary realised that the order in which these were added was significant. If  a static bitmap was added covering the entire layout, and then other items were added, they would appear on top of the background, thus creating the first “DX” (or “Deluxe”) layout – Viva Espana DX. Originally, these DX layouts were presented in the standard 4:3 layout of the emulator, but later on variations appeared including layouts presented using the correct aspect ratio (WDX – “Windowed DX”), and traditional 4:3 DX layouts with side-art panels to pad out the unused space with information about the layout creator, machine etc. Other variations include the PDX (“Pseudo DX”) which were created where the original artwork was unavailable and the artwork was instead recreated from scratch in Adobe Photoshop, Illustrator, Corel Draw or similar with mixed results.

MERC and JPeMu

The first product I began for FME was the MERC tool (MPU Emulator Resource Creator):

About MERC

MERC About Box

This allowed the common plebs (such as myself) the ability to create new layout files for the MPU emulator, or even amend existing ones (although for political hysteria reasons, I was forced to remove this functionality prior to release under threat of impending doom, lack of emulator updates, lack of new machine ROMs and suchlike). Still, it did what it said on the tin:

MERC - MPU Emulator Resource Creator

MERC - MPU Emulator Resource Creator

It appeared to be this act that was the trigger for Chris Wren to contact me and accept that perhaps there was someone else out there both interested enough and technically-minded enough to work with at producing FME projects. Although that’s not quite how it panned out…

With Chris Wren’s assistance I converted MERC from Borland Delphi to C++Builder, and gradually added the emulation core required for a JPM IMPACT technology emulator. This was further developed and refined over the next couple of years until such time as it had evolved almost as far as I wanted it to. There were some features that I had wanted to add, such as disc reel support, and I did indeed complete 99% of the work required for this, but due to a catastrophic hard-drive failure, I lost the additional work and felt too demotivated to repeat it.

Controversy the Seconde

Later versions of the “Fruit” emulator were leaked – these contained both lampable reels, and support for some of the newer Empire Games machines. This led to an unwillingness on CJW’s part to release further emulators.

The M1A Emulator

After IMPACT, I began working on another emulator – for Maygay’s M1A/B technology. This was an adapted version of JPeMu, and the emulation core was almost complete with the exception of a niggling sound problem. After discussion with CJW, it emerged that he was writing (or had written?) his own M1A emulator as part of the (now-named) MFME (Multiple Fruit Machine Emulator). I supplied some information concerning the IRQ/FIRQ (interrupt routines) in the hope that this would again “show willing” on my part to share, and elicit reciprocal information in respect of the sound troubles I was having. For a while, I was to be disappointed.

Collaborative MFME

After some time, Chris invited me to work with him on his own emulator, the now-named MFME (Multiple Fruit Machine Emulator). There was just one catch. Scorpion IV and MPU5 had both been emulated, but I was not to be privvy to their source code (although eventually, this situation did change and CJW relented and sent me their source). Between myself and CJW, we were able to add JPM System-80, MPS1/2, ACE System One, part of an Electrocoin emulation core, Proconn, Scorpion II (which I was uninvolved with as he did this more-or-less over a single weekend!) This arrangement largely went well, however Chris and I seemed to have some differences in respect of releasing public versions.

Controversy after Controversy

I paid a visit to a scene member (who has made it clear enough in the past that he does not wish his name mentioned) and took a copy of the MPU5/Scorp4 emulator with me. Although I remembered to delete it when I left, I neglected to perform a secure erase, and he “undeleted” it from his machine. Although he didn’t leak the emulator, he did produce a whole bunch of layouts which led to controversy when he released them for money (albeit to be donated to a children’s charity) and later released some more to be offered to “premium” members of one of the forums to the chagrin of many.

I later spent some time staying with another scene member who also had access to the emulator (and its source code) and took it upon himself to release a copy of those, effectively ending the public releases of MFME for good.

The EPEE controversy

This one is worthy of a separate mention as it’s something I was involved with – I had been developing a Maygay Epoch Emulator but for a number of reasons wished to remain anonymous. The spokesman for the project didn’t handle the PR effectively (as was to be expected in all honesty), and this left me no option but to withdraw from any involvement with the project, leaving it effectively dead-in-the-water.

Guitarous Maximus

And finally (for now!)… The next release that the scene were to see was an MPU4 emulator developed in Visual Basic by their very own member, Guitar. Quite a formidable achievement by all accounts, not least of which because it was coded in Visual Basic, a difficult enough stunt in its own right, but because he was able to offer a working BWB implementation (or so I understand).

And that pretty much concludes the potted history to date. There’s without question lots that I haven’t covered, and I’ve glossed over many other aspects either due to time, or because it really doesn’t matter all that much. I may revisit this page later and extend it when I get the urge, but for now there’s plenty enough to read on here!

Comments are closed.