Digging up E.T.’s source code

You don’t need to excavate a New Mexico landfill to find the code underlying Atari’s infamous video game flop

Photo of archaeologist Andrew Reinhard showing off the first E.T. the Extra-Terrestrial cartridges recovered from the old Alamogordo landfill, in Alamogordo, New Mexico, April 26, 2014.Image credit: REUTERS/Mark Wilson
Recovered E.T. game cartridges

One of the biggest video games flops in history, E.T. for Atari’s classic 2600 gaming console, is enjoying another moment in the spotlight these days. As you no doubt heard, a trove of unsold E.T. games (along with a bunch of other unsold Atari merchandise) was unearthed from a New Mexico landfill last month. The whole episode has generated some renewed interest in this wildly unpopular game that was based on the wildly popular Steven Spielberg movie.

[Exposing the source: 13 pieces of classic software whose code is now accessible]

One aspect of E.T. which is of interest to software and game developers is the original source code. The game was famously created in about 5 weeks during the summer of 1982, to have it ready for that year’s holiday season, by Howard Scott Warshaw. The highly compressed development time frame no doubt contributed to it being considered one of the worst video games of all time.

Regardless of how you feel about the game itself, you can now judge the quality of Warshaw’s underlying programming handiwork yourself by reviewing his original source code. The code, written in assembly language for the MOS Technology 6502 8-bit processor, has been around for a while, having been reconstructed by Dennis Debro in 2006. Debro decompiled the binary and added his own comments, since whatever comments Warshaw had included were lost when the code was compiled. Thanks to the recent discovery in New Mexico, the source code has also gotten some attention, like this recent thread on Reddit.

As PCWorld wrote last year, a developer named David Richardson took the time to fix many of the problems with the original E.T. game that caused people to become so frustrated with it. For example, he tells you how to change the source code to fix the problem of E.T. falling into wells too easily, how to prevent E.T. from losing energy when walking, running or hovering and even how to change E.T. from back brown back to his movie green. Richardson also fixed some actual bugs within the original game.

If you’re so inclined, you can take Debro’s recreation of Warshaw’s source code and make fixes using Richardson’s suggested tweaks. Or, to make life simpler, you can download a compiled version of Richardson's fixed E.T. code. You can then play either the orginal game, or a fixed version of it, using an Atari 2600 emulator.

In any case, the E.T. source code is an interesting read for any old school programmers who worked with 6502 assembly code back in the day, or for younger developers only used to working in higher level languages, to see how video games were created 30 years ago. Have at it!

Read more of Phil Johnson's #Tech blog and follow the latest IT news at ITworld. Follow Phil on Twitter at @itwphiljohnson. For the latest IT news, analysis and how-tos, follow ITworld on Twitter and Facebook.

ITWorld DealPost: The best in tech deals and discounts.
Shop Tech Products at Amazon