MAME cabinet, software
Finally dropping fiddling with the video hardware, I was able to move on to the actual emulator configuration. This task also swiftly turned out a far more bigger one than I had expected. Maybe just a little bit of history repeating to make my day with this project? Whereas it seemed, at a glance, something in the lines of “install frontend + emulator + ROMs, do a bit of config“, actually getting down to it proved out more something like “install frontend and get stuck in a myriad of config options and fine-tuning“. Despite having worked on the configuration quite a lot, it’s still pretty much “in progress”. But since the cabinet is up and running, I figured I might just as well do this post. Nailing things down to the last bit of detail isn’t of importance here anyway.
So yeah, let’s start with the frontend.. I first spent a good while investigating what’s “out there”, checking and cross-comparing feature lists (if any) and whatnot. Despite there are plenty to choose from, most of the frontends seemed discontinued or seldomly updated. The finalists on my list were Maximus Arcade, Hyperspin and GameEx. Out of these, I ended up with GameEx. It boasted a good set of features, had seemingly frequent updates and in overall, seemed like the most hassle-free to start testing with.
Comparing feature lists, Hyperspin’s seemed to focus more on seemingly pointless user experience stuff like “Animation based interface with hundreds of random effects so it’s always exciting to see” or “Overlapping background animation system for smooth transition between games“. Nice, but maybe these could be put to a separate list to make comparison easier? As downloading Hyperspin for testing required forum registration, I decided to leave it at that. The wheel selector does look nice on the screen shots, but not nice enough to bother with the registration!
Maximus Arcade on the other hand seemed more level with GameEx feature-wise, but still lacking here and there. I was planning to download it for testing anyway, but as their site was horribly slow (had enough of <19kbaud modems during early 90s, thanks!) and dropping downloads rather frequently, I used that as an excuse to shortcut to the GameEx installer. As a friend of mine would put it, “fuck that shit” :)
Continuing a bit on GameEx features, the free version can be upgraded to the registered version for measly 15USD. Upgrading gives you access to neat features like Goodmerge 7zip support and launching individual games with specific versions of MAME. Very handy for those games that work better on older builds or alternate versions (like AdvanceMAME), just as long as you bother with the configuration. And, provided that you’re up for doing absolute overtime with configuration, GameEx should be able to run just about any command line emulator you throw at it. Just add per system menu items, map controls and scan the game collection. As you probably guessed, these are exactly the reasons why I still am “in the process”.
As for the looks of the frontend, finding a theme to use (BlueEx) wasn’t too difficult in my case. There simply aren’t that many themes that work well on low-res displays, and on the other hand, most of the themes look rubbish anyway.. Despite BlueEx has a striped overlay that, on large surfaces, really brings out the SATA burst issue I discovered previously, it’ll do until I have the time to make a theme of my own.
Not that getting stuck with the config stuff is just about adding other emulators, far from it. After getting the basic GameEx installation out of the way, I started looking into controller config. Buttons and joystick, no problem. Lightgun, doable with a bit of research. The spinner however, wtf?!
To boot with, how am I to adjust the feel “just right” for a game I’ve never even had a chance to play? Even the real versions I’ve had, I have very vague recollections of.. Safe to say, at least on default settings the spinner seems to take way too much spinning in any given game (as in, a more dense spoke wheel might be in order). So, after spending way too much time trying to find balanced settings for a handful of games, I got frustrated and decided to push configuring the spinner waaaayy down on my to-do list :)
One other obvious part of controller configuration is to know which control does what in-game. Prior to launching a game, GameEx shows a screen with the controller config for it. To make this screen match the actual controller layout you have, GameEx supports running CPWizard whilst switching from the frontend to the emulator. CPWizard allows you to freely place graphical controller objects and link them with various labels. These are then replaced with the controller info associated with the game itself. So, in my case a mess like like this..:
..actually turns into a mess like this:
CPWizard has also an option for exporting the control panel layouts for all the games as bitmaps. If I got it right, these can be then shown instead of having the entire application running in the background. However, given the “button mess” on some games (like MSH on the picture above), I figured it might be better to try this feature only after I manage to come up with a generic enough layout template. The problem on my system is that, thanks to the blurry TV screen, I have to use a rather large font (+20px at places) to make the text readable. This in turn takes up a lot of space on the (very low-res) screen. With CPWizard running in the background, I can edit the layout on the fly and confirm visual changes over GameEx.
After these features had been set up, well, what a better way to test it than invite some video-game-enthusiastic friends over! Outside perspective and all that..
Session turned out a success; beers were downed, cabinet withstood the evenings worth of active gameplay and I gathered good pointers what still needs a bit of fixing. Not much of a surprise that the spinner was among these suggestions :)
One of the GameEx features I like the most has to be the combination of ‘attract’ and ‘jukebox’ modes. When left idling for a while (configurable), the frontend will start shuffling through games running each for a certain amount of time (also configurable) whilst keeping the background/jukebox music playing. I occasionally enjoy just leaving the cabinet running in this mode whilst working on something else in the near vicinity of the cabinet.
A separate post about the lightgun to follow..