laitimes

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

author:Featured on GitHub

"Open Source Selection" is a column where we share high-quality projects in open source communities such as Github and Gitee, including technology, learning, practical and various interesting content. This issue shares the original code for the Instruction Module (Comanche055) and the Lunar Module (Luminary099) from the Apollo 11 Guidance Computer (AGC).

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

Beginning with the simulated launch of Apollo 1 on January 27, 1967, the Apollo program lasted nine years and consisted of 17 serial number spacecraft, the most famous of which was Apollo 11, which successfully landed on the moon for the first time on July 16, 1969, carrying three American astronauts, including Armstrong.

At present, the original code of the instruction module (Comanche055) and the luminary099 module in the Apollo 11 guidance computer (AGC) that completed this grand moon landing program has all been open sourced on GitHub, with a total of 145,000 lines of code and more than 300,000 technicians behind the scenes.

Below is Margaret Hamilton, the space program's director of software engineering, standing by a pile of paper full of code.

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

The AGC code was first made public in 2003, and by transcribing paper copies from the MIT Museum's collection, Paul Fjeld digitized the code and collated it by Deborah Douglas, a scholar specializing in the history of technology and science, and finally uploaded the software to GitHub in its entirety by former NASA intern Chris Garry.

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

Let's take a look at the code:

Instruction module

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

Lunar module

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

The code was written in assembly language, and despite limited resources at the time, the Apollo computer was carefully programmed at the machine code level, with each instruction specifying a function that did not require multiple layers of abstraction in modern programming to translate high-level languages into low-level code, and currently NASA, in conjunction with MIT and a number of other agencies, is funding a project that provides the Apollo Guided Computer (AGC) simulator used in the Apollo Lunar Program command module and lunar module, as well as some other materials:

Register sheet

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

Time pulser

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

circuit diagram

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module
Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

Emulator interface

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

Run the effect

Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module
Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module
Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module
Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module
Open Source Curated | Original code for the Apollo 11 instruction module and the moon landing module

For more information, you can read it yourself.

Open source address: https://github.com/chrislgarry/Apollo-11

If you need project recommendations and resources, please send private messages to the author

Read on