16 votes

Original Apollo 11 Guidance Computer (AGC) source code for the command and lunar modules

6 comments

  1. [4]
    sqew
    Link
    I see this code pop up every few months around the Internet, and I never cease to be amazed by it. That this asm, along with a tiny amount of computer power by modern standards helped take humans...

    I see this code pop up every few months around the Internet, and I never cease to be amazed by it. That this asm, along with a tiny amount of computer power by modern standards helped take humans to the moon utterly blows my mind.

    8 votes
    1. [3]
      unknown user
      Link Parent
      For me at least, seeing this code gives me a lot of anxiety about how good of a developer I am myself; I need all these fancy debugging tools, IDEs, etc to help me be productive, whereas this code...

      For me at least, seeing this code gives me a lot of anxiety about how good of a developer I am myself; I need all these fancy debugging tools, IDEs, etc to help me be productive, whereas this code was written, presumably by hand, and thoroughly tested for correctness at a level extremely close to the hardware it was written on.

      It definitely makes me feel like a less than very good programmer!

      3 votes
      1. cptcobalt
        Link Parent
        This point makes me curious about how code creation has changed between then and now. Today, it’s simple for anyone to bang out and execute code. But early space-era NASA bureaucracy, I can kinda...

        This point makes me curious about how code creation has changed between then and now. Today, it’s simple for anyone to bang out and execute code. But early space-era NASA bureaucracy, I can kinda imagine a conference room war arguing over a specific implementation detail.

        My imagination might be wrong here. Any good books on the matter?

        3 votes
      2. frickindeal
        Link Parent
        I'm not a programmer, but from what I've read before, it's pretty close to pure assembly (or machine, I can't recall which) language, correct? I really wish I had the knowledge to dissect this...

        I'm not a programmer, but from what I've read before, it's pretty close to pure assembly (or machine, I can't recall which) language, correct? I really wish I had the knowledge to dissect this properly. It's fascinating that we have access to the code that drove these things.

  2. talklittle
    Link
    This is so terrifying. To imagine what effect a single logic error, math error, forgotten or out-of-order operation, a typo could have on the mission. It makes me shudder. So many opportunities...

    This is so terrifying. To imagine what effect a single logic error, math error, forgotten or out-of-order operation, a typo could have on the mission. It makes me shudder.

    So many opportunities for all of the above, if you look at, for example AUTOMATIC_MANEUVERS.agc which sounds important.

    And now I'm completely bewildered scrolling through PINBALL_GAME_BUTTONS_AND_LIGHTS.agc -- even the comments are almost complete gibberish to me. I have no idea what's going on or why the file is named the way it is. Is "pinball" a codename for something else, or is it literally a pinball computer game?

    Granted, if I were well versed in assembly languages, some of these programs would probably look a bit less daunting.

    7 votes