21 January 2022

Old School Coding Was Tight

It is amazing how much used to be done with so little processing power.

The AGC was designed with the sole purpose of providing navigational guidance and spacecraft control during the Apollo program throughout the 1960s and early 1970s. The AGC sported 72kb of ROM, 4kb of RAM, and a whopping 14,245 FLOPS, roughly 30 million times fewer than the computer this report is being written on. These limitations are what make the AGC so interesting, as its programmers had to ration each individual word of memory due to the bulk of memory technology of the time. Despite these limitations (or perhaps due to them), the AGC was highly optimized, and arguably the most advanced computer of its time, as its computational power was only matched in the late 1970s by computers like the Apple II. It is safe to say that the AGC had no intended market, and was explicitly designed to enhance control of the Apollo Command Module and Apollo Lunar Module. The AGC was not entirely internal to NASA, however, and was designed in MIT's Instrumentation Laboratory, and manufactured by Raytheon, a weapons and defense contractor.
Charles Averill "A Brief Analysis of the Apollo Guidance Computer" arXiv:2201.08230 (January 6, 2022).

1 comment:

Dave Barnes said...

Its descendent was the Poseidon Guidance Computer.
I wrote some related code for it.