explaingit

chrislgarry/apollo-11

67,883AssemblyAudience · researcherComplexity · 1/5MaintainedLicenseSetup · easy

TLDR

Original Apollo 11 Guidance Computer source code from 1969, digitized from physical printouts. Assembly code that guided humans to the Moon.

Mindmap

mindmap
  root((repo))
    What it does
      Moon landing guidance
      Navigation algorithms
      Trajectory calculations
      Real-time task management
    Historical context
      MIT Instrumentation Lab
      July 1969 mission
      Margaret Hamilton team
      Digitized from printouts
    Code details
      Two computers
      Command Module code
      Lunar Module code
      Pure Assembly language
    Use cases
      Study computing history
      Learn software engineering
      Explore space age tech
      Educational resource

Things people build with this

USE CASE 1

Study the original algorithms and logic that guided the Apollo 11 mission to the Moon.

USE CASE 2

Learn how software engineering was practiced in 1969 under extreme hardware constraints.

USE CASE 3

Explore assembly code and low-level computer architecture from the space age era.

USE CASE 4

Run the code in the Virtual AGC simulator to see the guidance computer in action.

Tech stack

AssemblyApollo Guidance ComputerVirtual AGC

Getting it running

Difficulty · easy Time to first run · 5min
Public domain, use freely for any purpose without restrictions.

In plain English

This repository contains the original source code that ran on the Apollo Guidance Computer (AGC) during the Apollo 11 mission, the first crewed Moon landing in July 1969. Specifically, it holds the code for two separate guidance computers: Comanche 055, which ran in the Command Module that carried astronauts to lunar orbit and back to Earth, and Luminary 099, which ran in the Lunar Module that actually descended to and ascended from the Moon's surface. The code was written at MIT's Instrumentation Laboratory under NASA contract and was digitized from physical hardcopy printouts held at the MIT Museum. The language is assembly, the most basic form of programming, where instructions correspond almost directly to the operations a processor performs. This is not code you would write or run today for practical purposes; it runs on the AGC, a computer from 1969 with roughly 2 MHz of processing power and 4 KB of reusable memory. The repository exists primarily as a historical archive and educational resource. You can browse through the actual logic that guided humans to the Moon: navigation algorithms, guidance equations, trajectory calculations, and the real-time executive that managed tasks with extraordinary precision under severe hardware constraints. The approval records included in the code show signatures from engineers including Margaret Hamilton, who led the software team. You would look at this repository if you are interested in computing history, the origins of software engineering as a discipline, or the remarkable engineering feats of the space age. If you want to actually compile and run the code in a simulator, the Virtual AGC project provides the tools to do so. The code is in the public domain. The primary language is Assembly.

Copy-paste prompts

Prompt 1
Show me the navigation and guidance algorithms from the Apollo 11 Lunar Module code. What math did they use to calculate descent trajectories?
Prompt 2
Walk me through the real-time executive code in the Apollo Guidance Computer. How did it manage multiple tasks with only 4 KB of memory?
Prompt 3
Explain the differences between the Comanche 055 (Command Module) and Luminary 099 (Lunar Module) code. What unique challenges did each face?
Prompt 4
How would I set up the Virtual AGC simulator to run the original Apollo 11 code and see it execute?
Prompt 5
What does Margaret Hamilton's signature in the code approval records tell us about software engineering practices in 1969?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.