Scott Manley asked on Twitter December 12th:
Ken Shirriff, who has worked on Apollo Guidance Computer hardware, decided to find out:
The Apollo mission to the Moon used two Apollo Guidance Computers (AGC). The AGC in the Command Module ran a program called Colossus while the AGC in the Lunar Module ran a program called Luminary.
The Apollo software was written in assembly code and an interpreted code, essentially a more advanced assembly code with trig and matrix operations.
The code was assembled on a Honeywell 1800 mainframe, running a program called Yul. A line printer generated listings just like the ones in the Hamilton photo.
Once the Apollo code was ready, it was physically woven into core rope modules. These modules were ROM storage; a wire went through a core for a 1 bit or around for a 0 bit.
Ken sked AGC expert Mike Stewart, who has a couple binders of Apollo code and he did some measurements. He said the thicker binders in the photo are Colossus or Luminary while the thinner are probably earlier programs like Sundial, Aurora, or Solarium.
There are 17 binders in the photo. Assuming the pile is 5″4′, they’re all code (not simulation), and applying Mike’s measurements assuming 10 binders are Aurora-like and 7 are Luminary-like yields 14,500 code pages, about 660,000 code lines.
This isn’t all unique code, of course. Two binders would be the two AGC programs. The pile is presumably different versions. The Virtual AGC project has carefully tracked the different software versions.
The Virtual AGC team has scanned a lot of the Apollo Guidance Computer listings, so you can take a look and see what the code looks like.
See the entire collection of posts and more in Ken’s Twitter thread here.
There is a family photo of my great grandmother that looks like this but instead of code it’s all of the genealogy she did in her life. Blows my mind what people did before computers.
Therefore a Margaret Hamilton SI unit is worth about a Dwarf Fortress SI unit, which has about 700k lines of code!