Emulate the Atari 2600

Bring Stella back to life using only your computer.

It’s no stretch to imagine that the very reason you bought this book was to read this very hack. Even those of us who were born after the Atari 2600 (or Video Computer System, if you’re a purist) know what it is and what it signified for the video game industry. (And if you don’t, you can go read up on its history [Hack #3] .)

In addition to buying a classic system and games, there are many other ways you can get your old-school Atari fix these days. You can buy an all-in-one device that plugs into your TV [Hack #15] or buy a collection of classic games for your PlayStation 2 or Xbox hardware [Hack #16] .

And you can also use programs called emulators that run the classic games on your home PC. Even better, these programs let you run homebrew software that today’s programmers have developed for the old hardware, sometimes squeezing out unbelievable results!

Atari 2600 Emulators

In this hack, I’ll walk you through installing two of the more popular Atari 2600 emulators, then get you started on finding some freely distributed games to use with them.


Named after the original code name for the VCS project (which itself was named after Atari engineer Joe DeCuir’s bicycle), Stella is one of the oldest 2600 emulators. It was originally programmed for Linux [Hack #43] , but has since been ported to many different operating systems. For purposes of this hack, I’ll discuss the Windows version. You can get it from the project’s official home page (http://stella.sourceforge.net/), but it’s easier to just grab the file from the emulation portal Zophar’s Domain (http://www.zophar.net/a2600.html).

If you open the Zip file using WinZip or Windows XP’s built-in Zip support (it opens right in Windows Explorer), you’ll probably notice that all the files in the archive already have a directory path attached to them. So just extract everything to your Program Files folder, and a new folder with the name shown in the righthand column in WinZip will be created. You’ll want to run StellaX.exe, which is the version that has a handy graphical user interface.

But before you run the program, you’ll want to grab some ROM files so you’ll have games to play. Later in the hack, I’ll show you where to get them. For now, let’s just pretend you’ve downloaded some ROMs, extracted the files using WinZip or another unzip program, and dumped the contents into the roms\ directory under the main Stella folder. Run StellaX and you’ll see something akin to Figure 4-5. (You may have to click the Reload button.)

Note that everything you’ve got in the roms\ folder—not just the ROM files—is displayed. You’ll have to figure out which ones are the ROMs; this is made easier by the fact that ROMs are not displayed with file extensions like .WAV or .ZIP, and also probably have Manufacturer and/or Rarity data displayed alongside them.

Double-click on DUP Space Invaders (Ron Corcoran), for example, and Stella will start up in a separate window, as shown in Figure 4-6. As with most Windows programs, you can hit Alt-Enter to run the game in fullscreen mode. The file stella.html in your docs\ directory will explain which keyboard buttons do what, but if you want to look at (and reassign) keyboard commands while running the game, hit Tab to bring up the menu, then hit Enter to use Event Remapping.

StellaX, displaying the messy contents of my roms\ directory

Figure 4-5. StellaX, displaying the messy contents of my roms\ directory

Stella. I’m not going to make the obvious Tennessee Williams reference

Figure 4-6. Stella. I’m not going to make the obvious Tennessee Williams reference

PC Atari.

Stella might not be your bag, baby, for a few reasons. First off, although StellaX is a nice GUI, it’s not fully integrated into the emulator. It just runs the command-line version of the program, and so when you’re adjusting settings, you have to do it in the clunky DOS-style Event Remapping mode. And you’ll have two programs open at once while you’re playing the game. If you’d rather have an emulator that looks and works more like the Windows programs you’re used to, you might try PC Atari, available from the same Atari 2600 page at Zophar’s Domain referenced earlier in this hack.

When you run PC Atari, you’ll see a screen like Figure 4-7. Ordinarily, you’d want to hit File, then Open to open up a ROM file. But regardless of the directory you extracted it to, PC Atari’s default settings are to search for ROMS in the directory c:\emu\2600\roms\. The odds are likely that this isn’t the exact directory structure of your hard drive, so you’ll want to change that setting. Click File Preferences to access this setting, as shown in Figure 4-8.

PC Atari’s startup screen, with no games loaded

Figure 4-7. PC Atari’s startup screen, with no games loaded

Click on the yellow folder icon next to the Games drop-down box, and you’ll be able to select the folder where your ROMs reside. Now click OK and you’ll be thrown back to the main PC Atari screen. Click Open to bring up a list of the ROMs in your folder. Double-click the name of the ROM you want to open, and you’ll again be thrown back to the main screen. Now click Emulation Start, and the game will launch.

The default controller setup has the first player joystick mapped to the number pad and the second player joystick on the arrow keys; you can change all keyboard assignments by clicking Interfaces Configure (though you must stop the emulation before you can change this or most other menu options).

Finding Freely Distributed 2600 ROMs

I got the ROMs pictured earlier in this hack from PD ROMs (http://www.pdroms.de), a web site that collects hundreds of public domain ROM files for a variety of different systems and boasts over thirty different 2600 games and tech demos. But there are other places to get homebrew 2600 ROMs.

One such place is from the company Atari Age (http://www.atariage.com). Their web site hosts a veritable treasure trove of information on all things Atari, and their store (http://www.atariage.com/store/index.php) sells all manner of Atari stuff, including homebrew cartridges (with professional labels, manuals, and packaging). If you click on the Homebrew section in the store, you’ll see a list of homebrew games that Atari Age sells.

PC Atari’s Options screen

Figure 4-8. PC Atari’s Options screen

If you click on the name of a game that interests you and then scroll nearly all the way down its listing page, you’ll see a link that says "For more information, please visit this product’s webpage.” Click the word webpage and you’ll be sent to a page where usually you can download the game’s ROM file.

Packrat Video Games (http://www.packratvg.com) also offers a few Atari 2600 homebrews on cartridge, but doesn’t list the ROMs for download. If you really want to find them, try searching Google for the program author’s name and the name of the game. You’ll probably turn up the author’s personal web page.

Get Retro Gaming Hacks now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.