How many lines of code are in the famous photo of Margaret Hamilton? #Space @kenshirriff

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.


As 2022 starts, let’s take some time to share our goals for CircuitPython in 2022. Just like past years (full summary 2019, 2020, and 2021), we’d like everyone in the CircuitPython community to contribute by posting their thoughts to some public place on the Internet. Here are a few ways to post: a video on YouTub, a post on the CircuitPython forum, a blog post on your site, a series of Tweets, a Gist on GitHub. We want to hear from you. When you post, please add #CircuitPython2022 and email circuitpython2022@adafruit.com to let us know about your post so we can blog it up here.

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Join 32,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more https://www.instagram.com/adafruit/

CircuitPython – The easiest way to program microcontrollers – CircuitPython.org


Maker Business — Pololu’s account of the chip shortage

Wearables — Monster-inspired costuming!

Electronics — How to make your own magnetic field probe!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Raspberry Pi Pico turns one and more! #Python #CircuitPython @micropython @ThePSF

Adafruit IoT Monthly — 2021 in Recap!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — JP’s Product Pick of the Week — 4pm Eastern TODAY! 1/25/22 @adafruit @johnedgarpark #adafruit #newproductpick

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !



2 Comments

  1. 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.

  2. Therefore a Margaret Hamilton SI unit is worth about a Dwarf Fortress SI unit, which has about 700k lines of code!

Sorry, the comment form is closed at this time.