Learning Center
Plans & pricing Sign in
Sign Out

Playing Games With Red Hat Linux


									                         Playing Games With Red Hat Linux
-------------------------------------- <<< ooooo >>> --------------------------------------

Table of Contents:

[>] Overview
[>] Basic Linux Gaming Information
[>>] Where To Get Information On Linux Gaming
[>>] Graphical Gaming Interfaces
[>>>] X Window System
[>>>] Linux Super Vga Library
[>>>] Opengl Support
[>] X Window Games
[>>] Gnome Games
[>>] Kde Games
[>>>] Chess Games
[>>>] Freeciv
[>>>] Starting Freeciv
[>>>] Beginning With Freeciv
[>>>] Building Your Civilization
[>>>] Exploring Your World
[>>>] Using More Controls And Actions
[>>] X Games You Can Download
[>>>] Lincity
[>>>] Xgalaga
[>>>] Maelstrom
[>] Character−Based Games
[>] The Xmame Gaming Emulator
[>>] Supported Xmame Hardware
[>>] Getting And Installing Xmame Games
[>>>] Finding Gaming Rom Sites
[>>>] Installing Game Roms
[>] Commercial Linux Games
[>>] Loki Software Games Demos
[>>] Civilization: Call To Power
[>>] Myth Ii: Soulblighter
[>>] Quake Iii Arena
[>] Summary

-------------------------------------- <<< ooooo >>> --------------------------------------

[>] Overview

The advancement of computer games has mirrored the improvements in computers themselves. In the 1970s,
the first games for UNIX systems were visually simple and could run on slow, character-based terminal
connections. Today, games that combine graphics, animation, and sound have helped drive improvements in
computer technology in general.

Availability of gaming software useable with Red Hat Linux is similar to that of Linux publishing software. A
lot of the old software is still around (and is free), while newer software is available in demo form but will
cost some money to get a full version. Some experts predict that gaming will be the software category that
brings Linux into homes. Although the number of popular game applications is limited at the moment, like
everything else in Linux, more are becoming available each day.

This chapter addresses the current state of gaming in Linux, including the basics on getting your gaming
environment going, and hardware and networking considerations for multiuser gaming. It describes the free
games (mostly character-based and fairly simple X Window games) that come with Red Hat Linux or that
can be easily downloaded. For running games that were created for other platforms, this chapter describes
some game emulators.

This chapter also discusses some graphical games, such as Quake III, that have demo versions available for
Linux, as well as the full commercial game being packaged for Linux, such as Civilization: Call to Power.

[>] Basic Linux Gaming Information

There isn’t much you need to know to run most of the text-based or X Window-based game applications that
come with Red Hat Linux. Most of the gaming issues that may trip you up pertain to those commercial games
that need special hardware and software to run 3D graphics and animation. Outside of that, however, there are
a few bits of game information that may be useful.
___ Games are often placed in /usr/games or /usr/X11R6/bin, though many KDE games are simply piled
in /usr/bin. If a game that you play a lot is in /usr/games or some other directory that is not in your
PATH by default, you may want to add them to your PATH. That way, you don’t have to type the
whole directory structure with the command. The games may also be installed in /usr/local/games or
some other directory (such as a subdirectory of /opt).

___ Man pages for older Linux games are in section 6 (in the /usr/share/man/man6 directory).
Tip After I install a game package, I type rpm -ql package, where package is the name of the game package.
This shows me where the executables and documentation are, if any.

[>>] Where to get information on Linux gaming

To find news on the latest games available for Linux, as well as links to download sites, go to some of the
several Web sites available. Here are a few to get you started:

___ The Linux Game Tome ( - This site contains news on Linux gaming and
lots of links to other gaming sites. In particular, there are links to news from other gaming sites. Links
to recently updated or reviewed games are also included.

___ ( - This site can help you get the latest information on the
games you are interested in. There are links to HOW-TOs and Frequently Asked Questions (FAQs),
as well as forums for discussing Linux games (so far, most of the action is in the Games Development
forum). There are also links to Web sites that have information on a particular game you are interested

___ id Software ( - Go to the id Software site for information and
download links for Linux demo versions of the Quake and Doom games.

___ Loki Entertainment Software ( - Loki ports best-selling games to
Linux. Their products include Civilization: Call to Power, Myth II: Soulblighter, SimCity 3000,
Railroad Tycoon II, and the Linux version of Quake III Arena. Check the Web site for other games in

___ Tux Games ( - If you are ready to purchase a game, the Tux Games
Web site is a dedicated to the sale of Linux games. Besides offering Linux gaming news and products,
the site lists its top-selling games and includes notices of games that are soon to be released.
If the idea of developing your own games interests you, try the Linux Game Development Center

[>>] Graphical gaming interfaces
Most new games that require a graphical interface to run under Red Hat Linux offer a version that runs under
the X Window System. Other graphical interfaces, however, are available. In some cases, you need to install
special software packages for these interfaces to work. Graphical interfaces include the X Window System,
SVGALIB, and GGI interfaces.

[>>>] X Window System

The X Window System (X) is the graphical interface used with every Red Hat Linux desktop by default. Most
new games offer X versions since everyone has X. Because X doesn’t provide a dedicated graphical screen for
the game, performance can be degraded. There is more overhead in X that is devoted to running the desktop
and managing X applications than is needed, if you just need a GUI to play a game.

Tip It is the X window manager that typically consumes most of your processing power. If you want to run a
game in X, you might consider using the twm window manager, which consumes a very small amount of
system resources.

[>>>] Linux Super VGA Library

The Super VGA Library (SVGALIB) interface can run games in a more dedicated way than X. An SVGALIB
game fills the whole screen. Because SVGALIB can run your game without having to manage a desktop and
other applications (as X does), SVGALIB can run some games faster than X. When you run an SVGALIB
application, it takes over the screen and control of the mouse.

Note The svgalib software package is not part of the basic Red Hat Linux operating system. However, it is
included on the Red Hat Linux FTP site or from a Red Hat mirror site.

At the moment, the development effort behind SVGALIB seems to be lagging. Also, the GGI effort
(discussed next) could eventually make SVGALIB obsolete. So far, it has not. To use games intended for
SVGALIB, you need to have the svgalib package installed.

Tip If your mouse isn’t working in SVGALIB, you may need to configure it for SVGALIB. To do this, edit
the /etc/vga/libvga.config file. This file contains details about configuring your mouse, keyboard,
monitor, and video chips so that they work properly with SVGALIB.

[>>>] OpenGL Support

Many advanced games in Linux rely on the OpenGL ( graphics environment for
high-performance graphics rendering. To see a list of games (as well as other applications) that rely on
OpenGL, you can refer to the Applications and Tools for Linux list that is maintained at the OpenGL Web site

Chances are that if you don't have a recent model computer, the video card you have may not support the
OpenGL features that are required by some of today's more demanding Linux games. You might want to
consider replacing the card with a newer card. For example, here is a list of video cards and the Linux games
from Loki Software that they can be used to play:

___ 3Dfx cards - Voodoo, Voodoo Rush, Voodoo 2, Voodoo Banshee, Voodoo 3,
Voodoo 4, and Voodoo 5

___ ATI cards - Rage Pro, Rage Pro/Mobility, Rage 128, Rage 128 PRO, and Radeon

___ Matrox cards - G200, G400, and G450

___ nVidia cards - TNT, TNT2, TNT Ultra, and GeForce

For more details on how to configure specific cards to work with Loki Software games, refer to the company's
FAQs page ( In particular, refer to the OpenGL on XFree86 FAQs for information
on setting up and troubleshooting particular video cards.

To do hardware acceleration in XFree86, DRI (Direct Rendering Infrastructure) GLX drivers are used. An
exception is that DRI drivers are not included for nVidia cards because nVidia provides closed-source binary
drivers for their cards. Because DRI drivers are actually compatible with the chipsets used on supported
boards, boards that used the same chipsets may also be supported. For more specific information about which
chipsets are supported in DRI, refer to the DRI support Web page (
Tip To use hardware DRI acceleration on Voodoo 3 cards, you must have your display set to use 16bpp
resolution. On Voodoo 5 cards, only 16bpp and 24bpp resolutions are supported.

[>] X Window Games

The X Window System created a great opportunity for games in Red Hat Linux and other UNIX systems to
move from character-based to graphical-based games. (Character-based games are discussed later in the
chapter.) So, instead of having little character symbols representing robots and arrows, they could actually
show pictures of little robots and arrows.

There are a lot of diverting games that come with Red Hat Linux and run in X. Unless otherwise noted, all of
the X games described in this section are free. Also, each of the major desktop environments that come with
Red Hat Linux has a set of games associated with it.

[>>] Gnome games

The Gnome games consist of some old text-based UNIX games, some card games, and a bunch of games that
look suspiciously like games you would find on Windows systems. If you are afraid of losing your favorite
applications (such as Solitaire, Freecell, and Minesweeper) when you leave Windows 9x/2000, have no fear.
You can find many of them under Gnome games.

Table - 1 lists the games available by selecting Programs ® Games from the Main Gnome menu.

Table - 1: Gnome Games
[>>] KDE games

If you install KDE, there are a bunch of games that come with the desktop. These games also show up on the
Gnome menu. To see the KDE Games from the Gnome menu, select KDE menus ® Games, and then choose
the game you want from the following categories: Arcade, Card, Board, Tactic/Strategy. The games available
in KDE are listed in Table - 2.

Table - 2: Games for the KDE Desktop
The games on the KDE menu range from diverting to quite challenging. If you are used to playing games in
Windows, Minesweeper and Patience will seem like old favorites. Asteroids and Poker are good for the
mindless game category. For a mental challenge (it’s harder than it looks), try Sokoban. For a challenging
multiuser game on the GNOME menu, try Freeciv. (The commercial version of Freeciv, Civilization: Call to
Power, is described later in this chapter.) For chess enthusiasts, there is xboard.

If the games that run in X that come with KDE aren’t enough for you, lots of X games are available for
download from the Web. For example, the Freshmeat site lists more than 200 games in its application index
that you can be downloaded to run in X (go to
The following sections describe a couple of the more interesting Red Hat Linux games that run in X. First is
the xboard game and some related chess programs. Next is a description of Freeciv.

[>>>] Chess games

Chess was one of the first games played on computer systems. While the game hasn’t changed over the years,
the way it’s played on computers has. The set of chess programs that come with Red Hat Linux lets you play
against the computer (in text or graphical modes), has the computer play against itself, or replays stored chess
games. You can even play chess against other users on the Internet using Internet Chess Servers (ICS).

The xboard program is an X-based chess game that provides a graphical interface for gnuchess. GNU Chess
(represented by the gnuchess package) describes itself as a communal chess program. It has had many
contributors, and it seeks to advance a "more open and friendly environment of sharing" among the chess

With xboard, you can move graphical pieces with your mouse. To play against the computer, click Programs
® Games ® Chess from the GNOME menu, then start by just moving a piece with your mouse. While in the
xboard window, select Mode ® Two Machines to have the computer play itself. Select File ® Load Game to
load a game in Portable Game Notation (PGN). Figure - 1 shows the xboard window with a game in
Figure - 1: In the xboard window, you can set xgame to either play against the computer or to replay saved

You can use xboard to play online against others, by connecting an xboard session to an Internet Chess Server
(ICS). To start xboard as an interface to an ICS, type the following command line:

xboard -ics -icshost name

In this example, name is the name of the ICS host. In ICS mode, you can just watch games, play against other
users, or replay games that have finished. The ICS host acts as a gathering place for enthusiasts who want to
play chess against others on the Internet, watch games, participate in tournaments, or just meet chess people.
Here are Web pages you can use to get to a few ICS host computers:

___ Internet Chess Club: ICC (

___ (

___ Free Internet Chess Server (

As an alternative to xboard, you can sometimes use Web-based applications to play chess on the Internet. For
example, if you were to visit the Web site (, you could click the Play link to
start. You could then choose the chess software to use. ( for Java works in Red Hat Linux with
Netscape.) After the software downloads, you can sign up for a account. After that, the window that
appears lets you choose someone to play against or to watch a game in progress.

Chess-related commands that come with Red Hat Linux in the gnuchess package provide different ways of
playing chess or manipulating chess output. Here are some examples:

___ game - A command that takes the output of gnuchess (a chess.lst file) and outputs a PostScript file,
board by board. The move and current score are printed with each board.

___ gnuchess - A simple, curses-based chess game that runs on character terminals or in an xterm
window. (The curses interface in UNIX is used for creating and using menus and screen controls in
character terminals.)

___ gnuchessn - A command that is similar to gnuchess, but produces a fancier version (using features
such as reverse video).

___ gnuchessr - A completely ASCII-based version of chess.

___ gnuchessx - Another ASCII-based chess game that is compatible with xboard.

___ gnuan - A command that is used to analyze a chess game.

___ zic2xpm - A command that translates ZIICS chess pieces into xboard pieces. (ZIICS was a popular
interface for creating chess pieces that could be displayed in DOS.)

[>>>] Freeciv

With Freeciv, you create a civilization that challenges competing civilizations for world dominance. The
version of Freeciv that comes with Red Hat Linux contains both client software (to play the game) and server
software (to connect players together). You can connect to your server and try the game yourself or (with a
network connection) play against up to 14 others on the Internet.
You can start Freeciv from the Gnome menu by clicking on Games ® FreeCiv (either the Engels or Trident
tile set). If for some reason Freeciv doesn’t start, try starting it from a Terminal window by typing:

civ &

Figure - 2 shows the two windows that appear when you start Freeciv. The Connect to Freeciv Server
window contains your user name, host name, and port number. The Freeciv window is where you play the

Figure - 2: Play Freeciv to build civilizations and to compete against others.

Note If Freeciv won’t start, one reason may be because you are logged in as root. You must be logged in as a
regular user to run the civ command. (The root user is prevented from running Freeciv for security

[>>>] Starting Freeciv

You can go ahead and play a few games by yourself, if you like, to get to know the game before you play
against others on the network. The following procedure describes how to start your first practice Freeciv

1. Start Freeciv (K®Games®FreeCiv, or type civ&).
The Freeciv windows appear, as shown in Figure - 2.

2. From a Terminal window, start the Freeciv server by typing:

$ civserver

You can learn a lot about Freeciv at

1: Now accepting new client connections.
Get a list of available commands with 'help'.

3. Click Connect from the Connect to Freeciv Server window.

4. From the server prompt, type the following:

> start
Starting game.
1: Loading rulesets

A “What Nation Will You Be?” window appears on the client screen, as shown in Figure - 3.
Figure - 3: Choose a nation to begin Freeciv.

5. After you start Freeciv from the server prompt, choose a nation, the name of a leader, your sex, and
the style of the city, and then click OK. At this point, you are ready to return to the Freeciv window.

[>>>] Beginning with Freeciv

Check out the Freeciv window. Here are things you should know when you are starting. (You can find more
help at the Freeciv site:

___ Click the Help button for topical information on many different subjects that will be useful to you as
you play.

___ The world (by default) is 80 X 50 squares, with 11 X 8 squares visible at a time.

___ The active square contains an icon of the active unit (flashing alternatively with the square’s terrain).

___ Some squares contain special resources. Press and hold the middle mouse button for information on
what special resources a square contains. Try this a few times to get a feel for the land around you.
This action also identifies any units on the terrain, as well as statistics for the unit.

___ To see the world outside of your 11 X 8 viewing area, click the scroll bars outside of the map. At first
the world outside will be black. As units are added, areas closer to those units will be visible. (Press
the letter c to return to the active part of your map.)

___ An overview map is in the upper-left corner of the Freeciv window. As the world becomes more
civilized, this provides a good way to get an overview of what is going on. Right-click a spot on the
overview map to have your viewport centered there.

___ The menu bar contains buttons you can use to play the game. The Game menu lets you change
settings and options, view player data, view messages, and clear your log. The Kingdom menu lets
you change tax rates, find cities, and start revolutions. The View menu lets you place a grid on the
map or center the view. The Orders menu is where you choose the items you build and the actions you
take. The Reports menu lets you display reports related to cities, military, trade, and science, as well
as other special reports.

___ A summary of the economy of your civilization appears under the overview map. Information
includes number of people, current year, money in the treasury, and percent of money distributed to
tax, luxury, and science.

___ Ten icons below the overview information represent how money is divided between luxuries (an
entertainer), research (a researcher), and taxes (a tax collector). Essentially, these icons represent how
much of your resources are placed into improving each of those attributes of your community.

___ When you have made all your moves for a turn, click Turn Done. Next to that, a lightbulb indicates
the progress of your research (increasing at each turn). A sun icon starts clear, but becomes brighter
from pollution to warn of possible global warming. A government symbol indicates that you begin
with a despotic government. The last icon tells you how much time is left in a turn.

The Unit box shows information about your current unit. You begin with two Settlers units and one Explorer

[>>>] Building your civilization

Begin to build your civilization. Here are some things to try, as recommended by the Freeciv manual:

___ To change the distribution of money, choose Kingdom ® Tax Rates. Move the slider bars to
redistribute the percentage of assets assigned to luxury, research, and taxes. Try increasing research
and reducing taxes to start off.

___ Change the current unit to be a settler as follows: click the stack of units on the map and click one of
the Settlers from the menu that appears.

___ Begin building a city by clicking on Orders ® Build City. When prompted, type a name for the city
and click OK. The window that appears shows information about the city. It starts with one happy
citizen, represented by a single icon (more citizens will appear as the game progresses).

___ The Food, Prod, and Trade lines reflect the raw productivity statistics for the city. The first number
shows how much is being produced, the second (in parens) shows the surplus above what is needed to
support the units. The Gold, Luxury, and Science lines indicate the city’s trade output. Granary
numbers show how much food is stored and the size of the food store. The pollution level begins at

___ The Units at this point are not yet supported by a city (so nothing appears under Supported Units).
When Units require support, they will be assigned to cities, and they will draw on city resources.
Units present appear under that heading.

___ The map area shown consists of 21 squares that make up the city. The number 1 indicates the size of
the city. The number 211 reflects the production of food, manufacturing production, and trade,
respectively. The number 210 shows where the city’s citizen is working and the results of the work.

___ The Phalanx line shows that the city can build a Phalanx and that it will take 20 production points to
produce. Click Change to view other units the city could produce, select one you want to build, and
click Change. Below that is a list of your current buildings (of which you have only a Palace to start

___ Close the city window by clicking on Close.

[>>>] Exploring your world

To begin exploring, move the Settler.

1. Using the numeric keypad, press the 9 key three times to begin exploring. You can move the explorer
up to three times per turn. You begin to see more of the world.

2. When the next unit (the Settler) begins blinking, move it one square in another direction. Click Turn
Done. Information for the city will be updated.

3. Click the City to see the city window. Notice that information about the city has been updated. In
particular, you should see food storage increase. Close the city window.

4. Continue exploring and build a road. With the explorer flashing, use the numeric keypad to move it
another three sections. When the settler begins blinking, press r to build a road. A small R appears on
the square to remind you that the Settler is busy building a road. Click Turn Done.

[>>>] Using more controls and actions

Now that you have some understanding of the controls and actions, the game can begin taking a lot of
different directions. Here are a few things that may happen next and some things you can do:

___ After you take a turn, the computer gets a chance to play as well. As it plays, its actions are reported
to you. You can make decisions on what to do about those actions. Choose Game ® Message
Options. The Message options window appears, containing a listing of different kinds of messages
that can come from the server and how they will be presented to you.

___ As you explore, you will run into other explorers and eventually other civilizations. Continue
exploring by selecting different directions on your numeric keypad.

___ Continue to move the Settler one square at a time, once it has finished creating the road. (The Settler
will blink again when it is available.) Click Turn Done.

___ At this point, you should see a message that your city has finished building Warriors. When buildings
and units are complete, you should usually check out what has happened. Click the message
associated with the city, then click Popup City. The city window appears, showing you that it has
additional population. The food storage may appear empty, but the new citizens are working to
increase the food and trade. You may see an additional warrior unit.

___ A science advisory may also appear at this point to let you choose your city’s research goals. Click
Change and select Writing as your new research goal. You can then select a different long-term goal
as well. Click Close when you are done.

___ If your new Warrior is now blinking, click s to assign sentry mode to the Warrior.

You should be familiar with some of the actions of Freeciv at this point. To learn some basic strategies going
forward, choose Help ® Help Playing. It will provide you with some general strategy steps for playing the

[>>] X games you can download

There is no shortage of games you can download from the Web. The following are a few action and strategy
games you can download and start playing. You can find links to these packages at either or by using the rpmfind command. The examples shown here include LinCity,
Xgalaga, and XSoldier.

[>>>] LinCity

LinCity simulates building and maintaining a city, or a suburban or rural area. You add residences,
monuments, communes, tracks, markets, potteries, ore mines, and other sites to create a thriving community.
Connect areas together with tracks, roads, or railways. Remember that the game simulates a living
community, so watch that resources aren’t consumed too rapidly and that pollution doesn’t grow too quickly.
Try to recycle and make sure you don’t spend all of your resources and go broke.

Get LinCity from the Red Hat FTP site. Or, you can get it from the LinCity home page
( and look for a download link. Download and install the package as
directed. To start LinCity, type the following command (it’s probably located in /usr/local/bin):

$ xlincity

The first time you run LinCity, it asks if it can create a directory in which to save your games. Yes is a good
answer to that. Then, when the LinCity window opens, the game helps you get started by letting you load a
built-in scene or begin with a random village.

Here are some tips for playing LinCity:

___ Right-click a button to see a description of an item before you add it to your community.

___ Use the Tips button to create a place to put your trash. If you accumulate too much trash, you may
need to burn it (which causes pollution). When the trash area fills up, it gets covered in grass.

___ Build monuments to improve unemployment temporarily, add inspiration to a community, and
increase the community’s technological capability.

___ While a mill can produce goods, be careful because the people who run the mill also consume a lot of

___ Either import or have farms for producing food. If you run out of food, people will either die or move

Figure - 4 shows an example of a LinCity community in action.

Figure - 4: Create a thriving community with LinCity.

[>>>] Xgalaga

Xgalaga is your basic Space Invaders-type game. You fire back at alien spaceships as they attack you. Select
either keyboard (arrows to move and Spacebar to shoot) or mouse controls (move with mouse, shoot with
right-click). Then just move and shoot. There’s not much else to it, but it’s fun if your brain needs to rest for a
while. To start Xgalaga, type the following:

$ xgalaga

You need to install the xgalaga software package. You can find the xgalaga package using the rpmfind
command. It puts the executable in the /usr/X11R6/bin directory. Figure - 5 shows the Xgalaga window.
Your level and score appear at the top.

Figure - 5: Destroy enemy spaceships in Xgalaga.

[>>>] Maelstrom

In Maelstrom, you maneuver your spaceship to dodge asteroids, then use your shield and plasma cannons to
destroy them. Besides asteroids, you need to look out for stars that go nova, Shenobi autonominous mines,
vortexes, and Shenobi fleet ships.

Start Maelstrom from the Gnome menu (Programs ® Games ® Maelstrom). Then click the P button to start
the game, or click the C button to change the keyboard controls for the game. Here are the keyboard controls
assigned by default:

Figure - 6: Avoid and destroy asteroids in Maelstrom.

[>] Character−Based Games

There aren’t many character-based games delivered with the basic Red Hat Linux installation. If you are
interested in trying some of the legacy UNIX games, some of which were created many years ago, you can
install the bsd-games package (which is available from Red Hat FTP sites).

The games that come in the bsd-games package include simple card games, shooting games, and adventure
games. As previously noted, games are stored in the /usr/games directory by default, so you may want to add
that directory to your PATH.
Some of the games have score files, which should be created as writable by everyone (if multiple people use
your system). Or you can make those games that write to score files into setgid games, and then make the file
permissions 664. The owner and group of each game command is root by default. Only one game (Hunt)
allows multiple players and has a daemon program (in /usr/sbin) for coordinating game play.

If you want to control who runs these games and when the games are run, you can use the dm command
(Dungeon Master) for controlling access to games. You can add controlled games into a hidden directory
(/usr/games/dm), then create a configuration file (/etc/dm.conf) to determine when each controlled game can
be run.

Table - 3 lists all of the games available in the bsd-games package. For a simple game, try Fish
(/usr/games/fish). If you are adventurous, try Adventure (/usr/games/adventure). Here are a few hints that will
help you with Adventure:

___ Move around the caves in Adventure by asking for an adjacent room or by naming a direction (N, S,
E, SW, NE, etc.).
___ As you explore the caves, draw a map as you go - it helps you return to places later.
___ Take valuable things and bring them back to the building.
___ Typing xyzzy and plugh sometimes transports you to a remote location.

Table - 3: Games in the bsd-games Package

[>] The xmame Gaming Emulator

Creators of gaming emulators set out to take games that were designed for home gaming consoles or arcades
and have those games run on a computer. As a result, games that were created for gaming machines that are
now outdated or broken can be resurrected on your home computer.

A compilation of gaming emulators has been put together into one project called Multiple Arcade Machine
Emulator (MAME). Nicola Salmoria started the MAME project in January 1997. There are now more than
100 contributors. An X Window System version of MAME called xmame runs in Red Hat Linux. There are
also several other versions that run in different video modes, allowing the use of 3Dfx, SVGALIB, and other
video technologies.

No games are delivered with the xmame package. Games that can be used with the xmame package are listed
in a file that comes with xmame. That file lists more than 600 games that are supported by xmame. (Up to
2000 games have been listed as compatible with MAME on other computing platforms - in particular, old
Windows 3.1/95 platforms.)

You can download the xmame package from any Red Hat FTP site. If you prefer to install from source code,
you can download the most recent version from the X-MAME home page at Although it
can be a bit trickier getting xmame installed and working, the real trick is getting legal software (ROMs) and
getting them to run properly. (I discuss that a bit later.)

[>>] Supported xmame hardware

To control your gaming, xmame supports several different types of gaming hardware, including:

___ Joysticks - Xmame supports i386-style joystick driver, the Fm Town Pad, the X11 input extension
joystick, and the newer i386 linux 1.x.x joystick driver, if those drivers are compiled into Linux.

___ Mouse - Common device for moving the pointer on the screen.

___ Trackball - A ball device, used instead of a mouse particularly on laptop computers, for controlling
how the pointer moves on the screen.

___ Game pad - A pad device (accessible through the /dev/pad00 device).

For sound, the audio device is defined as /dev/dsp. If you want to change any of the game controlling devices
or sound device, you can edit the xmamerc file in your $HOME/xmame directory. You can set the
system-wide configuration information in /usr/lib/games/xmame/xmamerc.

To use a gaming device for a particular game, indicate that on the xmame command line. To use a joystick,
add -joy; to use a mouse, add -mouse; to use a trackball, add -trak; and to use a game pad, add -pad. (The
game pad requires the Linux FM-TOWNS game pad driver.) For example, to add a mouse for a particular
game, type:

$ xmame -mouse game

[>>] Getting and installing xmame games

The xmame package doesn’t come with any games. Because the games that run on xmame and other
emulators are copyright protected and intended for other machines, it is illegal for you to obtain copies of
these games without already owning the original arcade machine.

The games that can be used by xmame are copied and distributed in what are called ROM images. Each game
is usually stored in a single zip file that is uncompressed to a half-dozen or more files that are used by
xmame. ROM images are created by special hardware that can copy software from game cartridges and other
media. Because most of these games are covered by copyright protection, ROMs can only be used in
particular ways so as not to be illegal.

Sites that have ROMS to download come with some very strong warnings. Likewise, MAME itself gives
strong warnings about how to use ROMs and asks that if you repackage MAME that you not include ROMs
with it. When you visit a ROM download site, you will see the rules under which you can download and use
the ROMs. You will be asked to agree with those rules before you proceed. Warnings typically include the

___ You must own the game cartridge of the game you are downloading. You are legally entitled to a
backup copy of any software you purchase, according to some of these sites.

___ You must not sell ROMs for profit.

Caution I recommend that you do not use any game ROMs that are copyright protected. If you decide to
obtain ROMs, you are responsible for researching the legal aspects of your actions.

Some sites say that you are allowed to copy a game ROM for a 24-hour period, after which you must either
purchase the game machine or delete the game. However, those sites also warn that many of the ROMs cannot
be used legally in North and Central America. Again, buyer (or in this case, downloader) beware.

[>>>] Finding gaming ROM Sites

The best place to begin looking for ROMs that run in xmame is at the MAME ROMs site
( That site has links to sites that have the latest MAME ROMs.

Check the gameslist.txt file that came with the xmame package you installed. It lists the games that are known
to work with xmame and describes any known problems. Checking this file can prevent you from wasting
time downloading ROMs that are known not to work with your gaming emulator.
[>>>] Installing game ROMs

When you look at the gamelist.txt file, notice that there is a directory name associated with each game.

Typically, that is the name that identifies the game. You use that name to create the ROM directory and to ask
for the game on the xmame command line. The following procedure describes how to install a fictitious ROM
called so that it can be used by xmame:

1. Create the directory for the game:

$ mkdir /usr/lib/games/xmame/hooha

2. Copy the zip file to the ROM directory:

$ cp wherever/ /usr/lib/games/xmame/roms/hooha/

3. Change to the ROM directory and unzip the file:

$ unzip -L hooha

4. Try the xmame command to see if the ROMs work. For example:

$ xmame hooha

Again, if this command doesn’t work, check that:

___ The xmame command is in your PATH (or type the full PATH).

___ The game’s ROM directory is in the base ROM directory. (Set the ROM directory with the
rompath value in the /usr/lib/games/xmame/xmamerc file or in your

$HOME/xmame/xmamerc file.)

___ The directory name and the game name are the same.

___ The case for the ROM files is correct. When the command fails, it will list the proper case for
each ROM (probably lowercase and numbers).

Note In Linux, case matters. In Step 3, use the -L option to unzip files so that they are in all
lowercase. If the xmame command fails later, it will tell you the ROM files it needs. Make sure
the files are there and in the proper case.

Known problems are listed in the readme.unix file (for general problems) and gamelist.txt file (for specific
game problems) in the /usr/doc/xmame* directory. If you get stuck, try the MAME newsgroup: The group is quite active and participants in the group are very helpful.

[>] Commercial Linux Games

Commercial software vendors believe that Linux will become a viable gaming platform. Popular commercial
games like Quake, Myth II, and Civilization: Call to Power all have shrink-wrapped versions that you can
purchase for Linux. To support those games, video card manufacturers such as Nvidia, ATI, and Matrox offer
3D graphic accelerator drivers that work in Linux. There still aren’t a ton of commercial games that run in
Linux, but some of the best are making their way to Linux.

To get an idea of the state of the art in Linux gaming, you need to try out some of these commercial games.
Demo versions of games like Civilization: Call to Power and Myth II provide a good way to learn the games
and help you decide if you want to purchase full versions. These demos often include the ability to play
against other people on the Internet.

The following section describes some of the most popular commercial games that are available for Linux.
More popular titles are being added all the time.

Tip If you try to download any of the demos described in the next sections, make sure you have plenty of
disk space available. It is common for one of these demos to require several hundred megabytes of disk
space to run. If you like a game, I strongly encourage you to purchase it, to help grow the market for
high-quality Linux games.

[>>] Loki Software Games Demos

Loki Software's catalog of action and strategy games for Linux has grown significantly in the past few years.
To encourage people to get to know their games, Loki offers a demo program that lets you choose from
among more than a dozen of its games to download and try.

The Loki Demo Launcher for downloading demos is available from the Demo Launcher page
( From that page, there are links to FTP sites from which you can
download the Demo Launcher. Save the file to a directory (such as /tmp/loki) and do the following:

1. Change to the directory where you downloaded the demo. For example:

# cd /tmp/loki

Note You may not need to be root user to install these games. However, the default paths where the
Demo Launcher tries to write by default are only accessible to the root user.

2. As root user, run the following command (the program may have a different name if it has been

# sh

If you have not used the Demo Launcher before, a screen appears asking you to identify the paths
used to place the Install Tool.

3. If the default locations shown are okay with you, click Begin Install.
Assuming that there was no problem writing to the install directories, you should see an Install
Complete message.

4. Click Exit. Next you should see the Uninstall Tool window.

5. If the paths for holding the Uninstall Tool are okay, click Begin Install.
The Install Complete message appears.

6. Click Exit.
A window appears that allows you to set the locations for installing the Demo Pack.

7. If the paths are okay, click Begin Install.
Next you should see a box that shows the different demo games that are available. Figure - 7 shows
an example of the window for selecting the demos you want to download:

Figure - 7: Check which Loki game demos you want to download.

8. As you move the cursor over each game, the disk space is displayed for that game. Click the games
you want to install, then click Continue. A window appears, displaying the progress of each

9. You may need to click an Update button to complete the update and Finish to finish it.
The demo should now be ready to start.

10. Either click Play or type loki_demos from a Terminal window to start the program.
Select to start the game and you're ready to go.

The following sections describe some of the games that are available.

[>>] Civilization: Call to Power

You can build online civilizations with Civilization: Call to Power (CCP). Like earlier versions and public
spin-offs (such as the Freeciv described earlier in this chapter), Civilization: Call to Power for Linux lets you
explore the world, build cities, and manage your empire. This latest version offers multiplayer network
competition and extensions that let you extend cities into outer space and under the sea.

CCP is produced by Activision (, although the Linux version was created by Loki
Entertainment Software ( CCP is one of the best selling games of all time, so it is
considered quite a plus for Linux users that a boxed version of the product is being produced for Linux.

If you like the Freeciv game that comes with Red Hat Linux, you will love CCP. Engaging game play is
improved with enhanced graphics, sound, and animation. English, French, German, Italian, and Spanish
versions are available. Each, at the time of publication, was priced at $49.95. If you are not quite ready to
make the commitment, a demo version is available using the Demo Launcher described earlier.

The game won’t run on just any computer. The Red Hat Linux software that comes with this book will satisfy
your operating system requirements. Your computer must have at least a Pentium 133 MHz processor, 32MB
RAM, 80MB of swap space, 16-bit color, and X Window System running. To play over the network, you
need network connection hardware (a network card or dialup Internet connection). To use sound, you will
need an Open Sound System (OSS) compatible sound card.

The CCP demo comes with an excellent tutorial to start you out. If you have never played a civilization game
before, the tutorial is a great way to start. Figure - 8 shows an example of a scene from the Civilization: Call
to Power for Linux demo.

Figure - 8: Civilization: Call to Power features excellent graphics and network play.

[>>] Myth II: Soulblighter

If you like knights and dwarves and storming castles, Myth II: Soulblighter for Linux might be for you. In
Myth II, you are given a mission and some troops with various skills. From there, you need strategy and the
desire to shed lots of virtual blood to meet your goal.

Myth II was created by Bungie Software ( and ported to Linux by Loki
Entertainment Software ( This version of the popular Myth game includes
improved graphics and new scenarios.

A demo version is available that runs well in Red Hat Linux. You can get it via the Demo Launcher described
earlier. As usual, you will need a fairly powerful computer (at least a Pentium 133 MHz, 32MB RAM, 80MB
swap space, and 100MB of free disk space). You need network hardware for multiuser network play (network
card or dialup) and a sound card if you want audio. A screen shot of Myth II is shown in Figure - 9.

Figure - 9: Use warriors, archers, and dwarves to battle in Myth II.

[>>] Quake III Arena

The latest version of the Quake series of games, Quake III Arena, is available in a Linux version. Quake was
the big follow-up game by id Software to their Doom line. Like Doom, Quake is a first-person (you) game in
which you travel through corridors, armed and looking for trouble. As with Doom, the main point is to shoot a
lot of monsters. The monsters, however, are much more varied and have different strengths and weaknesses.
There are also complex missions that need to be carried out.
If you want to try out Quake III Arena, you can get a demo version of Quake III Arena from the Quake III
Arena site: Figure - 10 shows the Quake III Arena demo setup.

Figure - 10: Try out Quake III Arena from

[>] Summary

While Red Hat Linux has not yet become a dominant gaming platform, there are still plenty of games running
on Red Hat Linux that you can spend your time on. Old UNIX games that have made their way to Linux
include a variety of text-based and X Window-based games. There are card games, strategy games, and some
action games.

For games that were intended for certain gaming consoles and arcade machines, the xmame emulator provides
an environment within the Linux system in which those games could be played. Hundreds of game ROMs are
available on the Internet, although copyright laws restrict what you can legally download and use.

On the commercial front, Civilization: Call to Power for Linux, Myth II, and Quake III Arena are available to
use on your Red Hat Linux system. Most of these games offer excellent graphics and animation, but they
require certain video cards and drivers to work effectively.

-------------------------------------- <<< ooooo >>> --------------------------------------

To top