It took about 2 MB of code to get Apollo 11 to the moon back in 1969. Recently, in a bit of fun, former NASA intern Chris Garry uploaded the full source code for the mission’s flight computer to the software-building website, GitHub, which proved to serve as a nice slice of nostalgia.
The Apollo Guidance Computer. Image source: Grabert at German Wikipedia.
While the source code has been available for some time now, its appearance on GitHub ensures a large audience of coders and enthusiasts, quickly becoming a window into the world of computer programming in the 1960s. Developed at MIT, the software for NASA’s Apollo Guidance Computer (AGC) was installed on command modules and lunar modules. But the most impressive part? Since the technology to program a sophisticated bit on spaceship navigation didn’t exist in the ‘60s, the team at MIT coded the entire thing from scratch. To do so, they created their own version of Assembly language along with a method for storing computer programs called “core rope memory,” which offered greater storage capacity at the time.
Once completed, the code measured up to being as tall as an adult woman, as shown in the picture below.
Image source: MIT.
In 2003, MIT scanned the physical pages of the AGC code and made them available for viewing. In 2009, Colorado airline pilot, Gary Neff, saw how unreadable some of the pages were and reconstructed the code himself. The code was found in a few places online, such as on a few blogs, but Neff’s work mainly languished in Internet obscurity until Garry found it and uploaded it to GitHub. From there, it found new life among programmers suggesting ways to improve and change the code.
By the looks of it, the original programmers left behind coding comments peppered with jokes, references to popular songs at the time, Shakespeare, and cultural events.
To see for yourself, check out the full AGC source code on GitHub.
Learn more about Electronic Products Magazine