November 22, 2007

Play Pac-man (and more!) on your PC

Author: Federico Kereki

If you have a fondness for old arcade games and want to play them again, try the Multiple Arcade Machine Emulator (MAME), a free emulator that lets you recreate the look and feel of old arcade game systems in software. While it's written for Windows, you can run this open source application under Linux.

MAME produces highly accurate video and audio emulation of every component of the original arcade games. Since the emulated games are usually older ones, which originally ran on 8- or 16-bit CPUs at (by today's standards) slow speeds, a 1GHz Pentium is fast enough to run MAME, though you'll want a faster machine for more recent games.

MAME was first released in February 1997 and is currently up to version 0.121, released not under the General Public License (GPL) but rather a special license. It's getting close to being able to run 4,000 different games and is in active development.

Run MAME on Linux

Several projects existed for porting MAME to Linux, but only one is still active. SDLMAME, based on the Windows code, aims to run MAME with as few changes as possible so it can follow new MAME releases more quickly. It runs on Linux (32- and 64-bit), FreeBSD, and Mac OS X. It even supports Windows, though it would make little sense to run SDLMAME instead of the original MAME.

To install SDLMAME, download the latest version. You must have installed the SDL and SDL-devel packages; get them with Smart, YaST, yum, or whatever package manager your distribution uses. Unzip the archive file and change to the directory it creates. Edit the makefile file to set the right option for your CPU type, then run make to create a mame executable file.

If downloading ROM images is legal in your country, a simple search will provide the files. Store the images (don't unzip them!) in the $HOME/bin/sdmame0121/roms directory. To play a game, enter ./mame theRomYouWantToPlay. (For Athlon processors, the command is mameat.) Everything from there on is automatic.

If you want to set up specific options, such as full screen or windowed game play, you can use ./mame -showusage to learn the possible parameters, and then create a mame.ini file with them, so you won't have to type them each time you play.

Certain keystrokes have special meaning under MAME:

  • Tab: Invoke the MAME menu.
  • Escape: Go back or end the game.
  • 5: Insert a quarter.
  • 1: Start a one-player game.

But is it legal?

Is it legal to play games with MAME? The authors say, "It is not our intention to infringe on any copyrights or patents on the original games," and provide advice on how users can avoid aggravated assault on the game developers' legal rights. But ROM and CD images are usually copyrighted material, which you cannot distribute without explicit permission from the owner of the copyright. Although you can use some games without a problem, most are still protected, and the copyright owners don't want to release the games in the open, because they're still producing income.

One myth about old games is that they've become "abandonware" and can be played at will. However, this is fiction: Unless a game is placed in the public domain, you cannot distribute or copy it without the permission of the owner until either 70 years have passed since his death or 95 years have passed since the first publication, if the copyright is held by a company.

To further muddy things up, remember that companies can merge, go broke, or just stop doing business, and the rights to their products may be transferred to a different company or reverted to the original authors. The mere fact that the original copyright owner or company doesn't exist anymore isn't good enough. (Some games can become "orphan works," which adds another whole slew of problems.)

If you want to get ROM images to play, you must be able to prove that the software is really free (as in freedom, not as in free beer) or you'll risk running afoul of the law.

Practically speaking, not all old copyrights are defended. The owners might realize that their games are old or obsolete, or they might have gone out of business without transferring ownership of the games, giving no one the right to defend the copyright. If a game isn't sold anymore and the hardware is obsolete, defending the copyright could end up costing more than what the copyright holder would be awarded in court. Nevertheless, copying the software might still be unlawful.

Some people think there is a loophole in the Digital Millennium Copyright Act that allows copying and playing exemptions, at least until 2009; the second out of six possible exemptions reads (italics added):

Computer programs and video games distributed in formats that have become obsolete and that require the original media or hardware as a condition of access, when circumvention is accomplished for the purpose of preservation or archival reproduction of published digital works by a library or archive. A format shall be considered obsolete if the machine or system necessary to render perceptible a work stored in that format is no longer manufactured or is no longer reasonably available in the commercial marketplace.

However, it's unlikely you'll be able to prove that your PC qualifies as a library or archive. Even if you do manage to qualify, you should legally own the game first before being allowed to do anything with it, so just downloading it from a Web site is a "no go."

All the laws mentioned here apply only in the United States. If you live abroad, laws may be radically different, and distributing or downloading old games might be allowed. In many countries, copyright laws are limited to cases in which the copyright owners suffer harm; an old game that is no longer manufactured could be played safely.


If you're hankering for some nostalgic video game time, try SDLMAME. Shoot those aliens, kill that boss, and advance to the next stage!


  • Games
Click Here!