Google publishes the source code for Apollo 11’s on-board computers, which can be run in a specialised emulator to simulate your own lunar mission!
It’s been famously remarked that the on-board systems in Apollo 11 had less computing power than a modern pocket calculator.
Now we can see that the code which ran those systems was probably less complicated than the code behind the Windows Calculator.
As part of its celebration of the 40th anniversary of Apollo 11 and man’s first steps on the moon, the spaceheads at Google have published the original code
from the Apollo Guidance Computer
, or AGC.
The code was transcribed from scanned images of printouts for the AGC in both the Command Module (codenamed Comanche054), which reached moon orbit and was the return vehicle; and the Lunar Module (Luminary099), which took astronauts Neil Armstrong and Buzz Aldrin to the moon.
While the code itself is primarily of interest to programmers, there are some amusing snippets which show that the geek sense of humour never changes.
Line 666 in the Lunar Module’s code has a comment identifying it as “NUMERO MYSTERIOSO”, or the number of mystery, while Lines 179 and 180 have both been commented by the programmer as “TEMPORARY, I HOPE HOPE HOPE”.
If you want to load up the code and try it for yourself, Google also provides links to an open-source AGC emulator.
What's a GUI? The Apollo systems were controlled through a simple 'Dsky' (display and keyboard) console
Alternatively, you can take a virtual flight to the Moon with the latest update to Google Earth
which now adds lunar images and related content to the program.
The ‘Moon in Google Earth’ feature lets you take a tour of the landing sites with narration by Apollo astronauts; view 3D models of the landed spacecraft; zoom into 360 degree photos to see the footprints left by the astronauts; and watch archival TV footage of the Apollo missions.
The lunar panoramas can be explored using the same format as Google Street View format, although so far there haven’t been any privacy complaints.