Programming the Guidance Systems for Apollo

Programming the Guidance Systems for Apollo

I asked my father to tell me about how they went about programming the guidance systems for Apollo.  I already knew that a lot of it was done by punch cards.  Punch cards look a lot like the voting systems in Florida, so think of them like the original hanging chads, and we all remember hanging chads right?

Punch cards were actually just the data entry tool that was used before keyboards.  Each punch card had 80 columns that contained 10 numbers (0-9) and 2 over punches.  With these numbers you could create a number, letter or special character. So each column was a single number or letter i.e. a single keystroke on a keyboard. Fortunately, they didn’t have to punch the cards by hand (no hanging chads this way), they had key punch machines that they could use to punch out each column.  So each card could contain 80 keystrokes.  But wait, that’s not all, after you punch out all your cards to make up the code you want to write, you want to make sure everything is correct.  ibm-punchcardSo you would put the cards through a punch card printer, which would then print out the card data, on large sheets of green continuous feed paper.  You could then review what you created on your cards. Of course, we know that programmers always write code correctly the first time, so no need to go back and re-punch any cards or print out again and validate.  So, once you have all the cards just the way you want them, you would then put them in a punch card reader with some control cards which would tell the general computer what you were doing and where to put it. It would call up the YUL assembler which was specially written to take source code and produce Apollo Guidance Code (AGC). Of course, you actually do all this on a simulator first, which you would run many many times before actually getting it onto the AGC computer.

And yes, I am sure 52 card pickup was a popular prank!

The Instrumentation Lab developed the assembler language & interpreter that handled the Apollo guidance systems.

In a previous post I talked about an Astronaut error. The astronauts used a control panel where they could call up actions and programs through a panel.  I am over simplifying, but they had a button for Verbs, Nouns and Programs\Actions and a corresponding manual with codes for each of these.  So, if they wanted to “CHECK, FUEL, BoostEngine.” They would call up the appropriate program and then for example hit the verb button, enter code number (V21), enter noun button and enter code  (N74), then enter program and enter the right program number (Poo).  I just made you say POO!

I have fond memories of punch cards as my father always had stack of them in his back pocket and shirt pocket. Not only were they a programming tool, but they made great note paper.

I will forever be amazed at how we were able to put a man on the moon with the technology of the 60’s.   FOREVER!



Inaugural Post – My Father is a Rocket Scientist

Inaugural Post – My Father is a Rocket Scientist

Every Journey Starts Somewhere.

Why am I doing this?  Well I have a once in a lifetime opportunity; I am drivingApollo_program_insignia cross-country with my father from California to Boston.  My father (Dan Lickly) was part of the Apollo program, he worked at Draper Labs and was responsible for the navigational software.  He has so many stories and details stored in his well above average brain that I hope to capture them in this blog as we go.

Getting my father to talk about Apollo isn’t always easy and while I have a bunch of tidbits I have heard over the years to start me on my journey I hope to solicit more from anyone who reads this.  I have the man captive for 5 days, what an opportunity!!

Please feel free to send me ideas to ask him about.

And as my friend Annie Copps and I used to joke about as her father Ed Copps worked with my father, we truly are 2 people that can say, “My Father is a Rocket Scientist”