Pi gaming with the classics
Christian Cawley is playing Doom and other games on his Raspberry Pi without emulation.
You probably think of the Raspberry Pi as a useful computing tool that can also handle a bit of emulated gaming. But there are plenty of games that you can install on the Raspberry Pi without needing an emulator.
Open source games for Linux, classic games that have had the source code released, and games written in Python are all available. If an Arm-compatible build has been distributed, the game should run.
First person shooters, shoot-’emups, strategy games and more are all ready to install on the Raspberry Pi. While simple to install, though, configuration can be tricky – especially when it comes to finding a suitable controller.
You already know of one Raspberry Pi game that runs natively: Minecraft Pi. Many others are available and can be downloaded from the web or installed from repositories. Often they come ready to use, but in some cases, configuration is required to tailor the game for your Raspberry Pi model and controller setup (see boxout for more on controller setup).
Doom is a key example of a game that has gone open source, had the source code adapted for Arm processors, and is now available for the Raspberry Pi. Available as a framework into which you can install WAD files, Doom is one of many games, mostly from the 16-bit era, that will run on the Pi without emulation.
Running Doom on your Raspberry Pi is straightforward. You should be using a Raspberry Pi 2 or later and have a keyboard and mouse or game controller attached for playing.
The Doom source code is also required. Released in 1997, this has been repackaged several times. For the Raspberry Pi, arguably the best option is Chocolate Doom, which can be installed in the terminal using:
sudo apt install chocolate-doom
While the game engine is now installed, at present there is nothing to play. You’ll need the data files, weapons, maps and graphic assets which are available as packaged WAD files. Many different WADs are available, from packages that recreate the original game to WADs that introduce whole new ways of playing Doom.
To install on the Pi, change to the / usr/games directory.
cd /usr/games
Next, use wget to grab the WAD from the original shareware version of the game, which by chance offers the first episode for free:
sudo wget http://www. doomworld.com/3ddownloads/ ports/shareware_doom_iwad.zip
Finally, unzip it:
sudo unzip shareware_doom_ iwad.zip/
This will create a file called
DOOM1.WAD. While the game is ready to play, you’ll still need to configure Doom. Start by launching the setup tool:
chocolate-doom-setup
With this, you can configure the display, sound, keyboard, mouse, or your chosen gamepad or joystick. There is even the facility to start or join a network game. Key options you might use here include opening Configure Display and pressing A to view the advanced options. Select ‘Save screenshots in PNG format’ to get the best-quality screengrabs. You should also switch to Configure Keyboard to access the Other keys submenu and set a key for ‘Save a screenshot’.
Most importantly is controller configuration, using Configure Gamepad/Joystick. If you have something plugged in (such as an Xbox controller, for example) this should be automatically detected. Further configuration can be applied, such as setting the axes and fire buttons.
Throughout the setup screen, pressing F1 will launch the
Chocolate Doom wiki in your Pi’s browser. When you’re done, use Save parameters and launch Doom
to retain your settings and start the game. At other times when you’re ready to play, launch
Chocolate Doom with
chocolate-doom -iwad DOOM1. WAD
You can also launch from the Games menu on the Raspberry Pi OS desktop. While Raspberry Pi 3 and 4 can cope with the fullscreen resolution, the Pi 2 might struggle. For a more authentic
Doom screen resolution, set to a
640x480 pixel window:
chocolate-doom -iwad DOOM1. WAD -window 640x480
Pi-and-click adventures
Looking for something more relaxed? While plenty of other shooters are available (Chocolate Doom installs the frameworks for Hexxen and Heretic, for example, while Duke Nukem 3D, Quake and others are available separately) you might prefer the cerebral challenge of a point-and-click adventure.
Classic adventures such as Beneath a Steel Sky and Ultima IV: Quest for the Avatar have been released as freeware. Meanwhile others (such as the Indiana Jones
series from LucasArts, Broken Sword and Zork) are available to grab from Steam or GOG.
What this means for the Raspberry Pi is that you can play these games using ScummVM. It’s a multiplatform system for playing point-and-click games from the 1980s and 1990s. An acronym of ‘Script Creation Utility for Maniac Mansion Virtual Machine’, ScummVM was, as the name suggests, originally developed for
Maniac Mansion. These days, you can play a whole host of titles – over 200 (tinyurl.com/ APC487SCUMMVM).
Like Chocolate Doom, ScummVM
works best on the Pi 2 and later. Start by installing it:
sudo apt install -y scummvm
Next, create a folder for your games.
cd ~mkdir scummvm-games
To keep the games as close to the originals as possible, some extra packages are required to improve audio:
sudo apt install fluidsynth && timidity
Several freeware ScummVM
titles are available in the Raspberry Pi repos. Install these to start playing.
sudo apt install beneath-asteel-sky
sudo apt install flight-of-theamazon-queen
sudo apt install lure-of-thetemptress sudo apt install drascula
Once installed, games can be launched from Games > ScummVM.
A host of other games can be installed directly onto your Raspberry Pi without emulation. These aren’t original classics, but they owe a lot to them. A wellknown example is FreeCiv, a clone of the Civilization series that supports online and local multiplayer. This can be installed quickly with minimal configuration:
sudo apt install freeciv-clientsdl
Similarly, there is a clone of the original SimCity, called Micropolis.
Gameplay is almost identical to the ground-breaking 1989 game, which can be installed with
sudo apt install micropolis
Want to go further? Other games will run on the Raspberry Pi, but you’ll need some of the original game files to help. For example, Star Wars: Jedi Knight II has been ported to Linux, but you’ll need the audiovisual assets (graphics, sound and so on) for it to run correctly, as these are still copyrighted. One option for this is to buy the game on Steam, install it on Windows, then copy the asset files to your Raspberry Pi. This can get a bit messy, so check this thread on the Raspberry Pi forum: tinyurl.com/APC487JEDI.