Seeing the operation of code in Atari 2600 games. This is a dual reprise of my dismap and mariosoup pieces that look at the code of cartridge games, and how the graphics are mixed in.

Update 4 September 2010: Just added Ed Fries' Halo 2600 to the collection, see here for images and updates.

check out the hidden "Created by Warren Robinett" in the code towards the right
Air Raid
fairly typical cartridge output of code and image
my favorite atari game suddenly seems pathetically simplistic
most complicated of the bunch, what with all the AI for the ghosts
in plain view, it's pitfall harry and those dangerous "rolling" logs
a different sort of programming style can be seen here as compared to most others

Click any of the images above for more detail

Like any other game console, Atari 2600 cartridges contained executable code also commingled with data. This lists the code as columns of assembly language. Most of it is math or conditional statements (if x is true, go to y), so each time there's "go to" a curve is drawn from that point to its destination.

When a byte of data (as opposed to code) is found in the cartridge, it is shown as an orange row: a solid block for a "1" or a dot for a "0". The row is eight elements long, representing a whole byte. This usually means that the images can be seen in their entirety when a series of bytes are shown as rows. The images were often stored upside-down as a programming method.

The original version of these images are a series of 13 x 19 inch prints where you can actually read the individual bits of text. I modified a version of distella to produce disassembled text output in the format that I wanted, and then used Processing to write a second program that creates the image of the output.

In response to requests, you can now purchase prints of these images. Prints from the dismap project are also available. All proceeds are donated to charity.

<< BEN FRY  |  posted August 2005, updated September 2010