Stella for PlayStation 2/Linux

by Chris Kirmse
Stella is an Atari 2600 emulator released under the GPL. It more or less faithfully reproduces the experience of playing Atari 2600 games. In most cases, this is a bad idea. However, there were several great games that make this system still worth playing after all these years. Just don't waste too much time playing the really bad ones.

I recently had a craving to play some of the great old Atari 2600 games at home. Unfortunately, my parents (who live 3000 miles away) have them, not me! At first I considered going on an ebay shopping spree, but that would clutter up the place. Instead, I decided to port Stella to run on my PS2, using the Linux kit.

Click on any image to enlarge. Here's the main UI. The left side is a standard file selection list that you browse using the control pad. Load up an Atari 2600 ROM Image, and the emulation begins in the right window.
If this game looks good, you can hit the X button again to go full screen.
After going full screen, use the control pad to control the game. Select is mapped to the Select switch on the original Atari 2600; R1 is mapped to Reset. Then use the d-pad and the X button to replace the original joystick. Left/Right on the analog stick emulate a paddle. Hit Start to bring up a menu to control the difficulty switches, enable bilinear filtering, or return to the main menu.
Although Stella had previously been ported to Linux using X11 or SDL for display, it was fairly slow when running on the PlayStation 2. By replacing these routines with PlayStation 2 native drawing code, I was able to speed up the emulation and get good performance out of all games.

PlayStation 2 controllers happen to have excellent force feedback support, and at least one game was crying out to have force feedback support added. Since the Atari 2600 has so little data storage, it took very little time to comply.

Source code is available at the project web site.