Settings

Theme

Apollo 11 Guidance Computer source code for the command and lunar modules

github.com

158 points by rahuldottech · 32 comments

Reader

6 threads
bensochar

>TEMPORARY, I HOPE HOPE HOPE

https://github.com/chrislgarry/Apollo-11/blob/master/Luminar...

...it was not temporary

  • RcouF1uZ4gsC

    Was the hope that the code would be temporary, or that the external conditions the code was dealing with would be temporary? Remember this is flight control software. There might be transient conditions that the system can handle fine, but could lead to failure if they persist.

    • thewonderidiot

      That call to STOPRATE was there to zero out attitude rate commands at the moment the astronaut switches into the semimanual final descent program P66. It was removed in the final few revisions before the first, unflown release of the Apollo 14 software (Luminary 163 [1]) because it was preventing attitude control of the spacecraft when Rate-Of-Descent commands were skipped [2]. Skipping ROD commands wasn't normal, but was something that was added as part of the effort to make the computer more cleanly handle large unexpected additional load, like happened in Apollo 11.

      [1] https://github.com/virtualagc/virtualagc/blob/master/Luminar...

      [2] http://www.ibiblio.org/apollo/Documents/LUM156_text.pdf -- look for PCN 1037

  • ryanmarsh
    • thewonderidiot

      People frequently seem to think this is about the line number it's on (666), but that doesn't have anything to do with it. That line number is a totally modern construction; the original source code was on punch cards. That particular comment was punched onto card number 0562 in the LUNAR LANDING GUIDANCE EQUATIONS log section. The original developers only referred to code by punch card number, and page number in the listing. So it really is just a coincidence, and the "NUMERO MYSTERIOSO" is referring to whatever is in GAINBRAK,1.

      • wopian

        It should be 1. "GAINBRAK,1" is assigning 1 to GAINBRAK.

        • thewonderidiot

          No, it's not. The 1 here is using interpretive index register X1 to index onto GAINBRAK. The star on the DMP means that multiplication is indexed. GAINBRAK is one of the pad-loaded descent targeting parameters; the index selects the appropriate number based on the phase of the descent.

      • ryanmarsh

        One heck of a coincidence.

davidw

Wow, was "burn baby burn" really part of the original source code?!

https://github.com/chrislgarry/Apollo-11/blob/master/Luminar...

  • floatingatoll

    Line 34:

    > At the get-together of the AGC developers celebrating the 40th anniversary of the first moonwalk, Don Eyles (one of the authors of this routine along with Peter Adler) has related to us a little interesting history behind the naming of the routine.

  • ASalazarMX

    The whole line is not as shocking

        # BURN, BABY, BURN -- MASTER IGNITION ROUTINE
    • davidw

      It makes sense in context, of course, I just didn't think of NASA in the late 60ies as the sort of place where you could write 'clever' things like that.

      • ASalazarMX

        Back when AS/400s were AS/400s, I made a little tool to help the operators run a long process at night. I felt playful and left an easter egg: on Fridays the 13th, it would work as usual, but display a skull and bones with blinking red eyes while doing it.

        It seems that Fridays the 13th are rarer than I estimated, because months later my boss woke me up at midnight because the operators had woken her up because it was the first time the egg was triggered. In hindsight, it was a foolish thing to add since this was a bank. Fortunately they took it with good humor, and even kept the easter egg to scare new people.

        I suppose NASA is more formal than a bank, so they only let you fool around with the comments.

dang

Discussed in 2009: https://news.ycombinator.com/item?id=715395

2012: https://news.ycombinator.com/item?id=3888638

2014: https://news.ycombinator.com/item?id=8063192

https://news.ycombinator.com/item?id=7522539

2016: https://news.ycombinator.com/item?id=12048945

Smaller threads from a year ago:

https://news.ycombinator.com/item?id=19014278

https://news.ycombinator.com/item?id=18737380

NikolaeVarius

Title is incorrect, this has been available for quite a while

turbostyler

Didn’t this get released a couple years ago? Or was that a different ship?

jagged-chisel

Hasn’t it always been “public domain” but only now published on GitHub?

  • rahuldottechOP

    All NASA images and videos are in the public domain, but the same is not true for any technologies that they develop.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection