This guide outlines the game environment software setup suitable for use in custom arcade cabinets. Plug it in, watch it boot, then jump and run!
Why use Linux and older AdvanceMAME software?
When it comes to MAME, the Multiple Arcade Machine Emulator, there are many different versions including the official MAME, XMAME, SDLMAME and AdvanceMAME. AdvanceMAME is an older project no longer actively developed, but don't let its age fool you. It is as classic as the games it plays. AdvanceMAME features include a menu system, jukebox audio player, support for arcade monitors, support for screen rotation, and cool sound effects.
As an alternative to AdvanceMAME, a combination of SDLMAME and WAHcade could also be used in game cabinets. WAHcade is a menu system for Linux that allows custom themes with nice backgrounds and fonts. Since SDLMAME and WAHcade are newer packages, they may be easier to install on newer Linux distributions.
Feature tests with the AdvanceMAME project slightly beat the SDLMAME/WAHcade combination. AdvanceMAME with the AdvanceMENU component provides a nice look with great sound effects. SDLMAME/WAHcade came in a close second with a nicer theme solution for its menu.
Regarding the base operating system, Ubuntu Linux is preferred over Microsoft Windows due to the ease of installation, lack of serial keys, fewer driver issues, lower cost, ease of customization, better preloaded software, better documentation and a generally more open philosophy. There are many flavors of Linux that will run AdvanceMAME but sticking with standard Ubuntu Linux on standard hardware makes this setup fast and easy. Debian, Fedora and Gentoo would be other suitable and recommended Linux choices.
There is one point in MS Windows' favor. Arcade setups can easily be done on MS Windows. In fact you'll probably have better luck with Windows if you want to run current releases of the official MAME branch. Newer MAME versions are Windows only.
Running older software often requires the need to stay backwards compatible. Ubuntu 8.10 intrepid, which is not the latest version of Ubuntu, is being used to maintain this compatibility. Issues with newer versions of the GCC compiler and the X windows system may be encountered when compiling and running the older AdvanceMAME on recent Ubuntu versions.
Hardware choices, how low can you go?
Common brand, inexpensive, older hardware purchased off craigslist or eBay should be enough horsepower for AdvanceMAME. Trash picking someone's older junk PC would probably be enough too for a classic game cabinet. Running 1980's software on post Y2K hardware works great. Just remember that fans and hard drives have moving parts which wear out, replace these components with newer parts if possible.
This guide was tested on a Compaq Evo D310 Tower w/P4 - 2.40GHz / 1GB / 40GB. At the time of this writing, these were available from multiple online locations for well under $150.