Frequently asked questions

What is MAME?
MAME stands for "Multiple Arcade Machine Emulator". It provides a virtual environment where you can run software written for other platforms, namely old arcades.
What is SDL?
Simple DirectMedia Layer (SDL) is a software library which provides low level access to multimedia resources. Running on a variety of different platforms, it eases software porting and has therefore become very popular in games, emulators and multimedia applications.
What is SDLMAME?
SDLMAME has once been a port of the popular MAME™ emulator to the SDL library. It ran on many different platforms, including both 32- and 64-bit Linux. Since MAME 0.137 the SDL backend is part of the main source tree and no longer a port i.e. the project has been merged in the main development branch.
Why packaging? MAME is freely available!
Yes, indeed it is. And yet there are many good reasons for which it is distributed in source form only, which is both awkward for most unexperienced users of modern Linux distributions and time consuming for owner of older machines.
Can't I build MAME by myself?
Of course you can! Packages are intended to save you time and hassle, they are no gospel truth. Building MAME from source is and will always be possible!
What is a repository?
A repository is a software archive where packages are stored in a form suitable for automatic retrieving. Ubuntu manages software packages with the Advanced Packaging Tool (APT), which can be configured to use as many repositories ("software sources") as you like.
I hear no sound (any longer), MAME crashes...
I know this may sound weird, but there are good chances you've problem with PulseAudio. Yes, even for slowness and crashes. Enable the universe repository (I guess you already have if you're playing with MAME), replace any installed package named libsdl1.2debian-* with the libsdl1.2debian-pulseaudio package.

I've been reported that sometimes you have to install libsdl1.2debian-all instead of libsdl1.2debian-pulseaudio. Sound should appear next time you run MAME (thanks to Philippe Paget). Try both and see what works best for you.

How do I enable cheats?
Please note that since SDLMAME 0.126 the cheat engine has been rewritten. Old cheat file format has been dropped, be sure to use the the new single xml files.
  • Download a collection of cheats suitable for your MAME version from Pugsy's Cheats.
  • Either put the downloaded file in /usr/local/share/games/sdlmame/cheat/ or in .mame/cheat/ in your home directory.
    IMPORTANT FOR VERSIONS PRIOR TO SDLMAME 0.132u3: zipped xml files MUST be put in /usr/local/share/games/sdlmame/ or $HOME/.mame/sdlmame/ instead, because MAME handles the zip file as a directory itself! On the other hand, if you unzip the files, you MUST put them in the cheat/ subdirectory.
  • Enable cheat by either running MAME with the -cheat switch or setting cheat = 1 in /etc/mame/mame.ini