Monday, July 20, 2015

To the Moon with Only Stone Tools and Bear Skins Technology

Today is 20 July 2015. 


On this day many, many summers ago in 1969,  I sat transfixed to my family's  B&W TV.  There was no actual video from the space craft landing on the moon it simply was not available.  The TV Screen showed an animation and a digital countdown timer was all that their was to see.  Even at my young age I understood there was a drama unfolding a quarter of a million miles away...

As they descended to the lunar surface, mysterious alarms were being called out "1202, 1201, 30 seconds"  of fuel left...a real nail biter..

102:38:26 Armstrong: (With the slightest touch of urgency) Program Alarm
102:38:28 Duke: It's looking good to us. Over.
102:38:30 Armstrong: (To Houston) It's a 1202.
102:38:32 Aldrin: 1202. (Pause)

...1202 Alarm! what the hell is that? Oh no! this can't be good....

102:38:53 Duke: Roger. We got you...(With some urgency in his voice) We're Go on that alarm.

More routine communications stuff then...

102:42:19 Aldrin: Program Alarm. (Pause) 1201
102:42:24 Armstrong: 1201. (Pause)
 102:42:25 Duke: Roger. 1201 alarm. (Pause) We're Go. Same type. We're Go.

I am pretty sure i said "oh no!" at this... I knew that anything called an "ALARM" can't be good....two ALARMs is really bad. Here is how the rest went...

102:44:04 Aldrin: I got the shadow out there.
102:44:07 Aldrin: 250 (feet altitude), down at 2 1/2, 19 forward. (Pause)
102:44:13 Aldrin: Altitude (and) velocity lights (on).
102:44:16 Aldrin: 3 1/2 down, 220 feet, 13 forward. (Pause)
102:45:17 Aldrin: 40 feet, down 2 1/2. Picking up some dust.
102:45:21 Aldrin: 30 feet, 2 1/2 down. (Garbled) shadow
102:45:25 Aldrin: 4 forward. 4 forward. Drifting to the right a little. 20 feet, down a half.
102:45:31 Duke: 30 seconds (until the 'Bingo' call).

...Now they are running out of Fuel!

102:45:32 Aldrin: Drifting forward just a little bit; that's good. (Garbled) (Pause)
102:45:40 Aldrin: Contact Light.
102:45:44 Aldrin: Okay. Engine Stop.
102:45:47 Aldrin: Mode Control, both Auto. Descent Engine Command Override, Off. Engine Arm, Off. 413 is in.
102:45:57 Duke: We copy you down, Eagle.

They did it?

102:45:58 Armstrong (onboard): Engine arm is off. (Pause) (Now on voice-activated comm) Houston, Tranquility Base  here. The Eagle has landed.

 ...Yes!

102:46:06 Duke: (Momentarily tongue-tied) Roger, Twan...(correcting himself) Tranquility. We copy you on the ground. You got a bunch of guys about to turn blue. We're breathing again. Thanks a lot.

102:46:16 Aldrin: Thank you.



You can google and read the entire  Apollo 11 Landing Transcripts  But this is not the real point of this post... it is really about:

The Apollo Guidance Computer


How did they do it?  What was this mysterious box producing these cryptic alarm numbers?   How in the hell can you navigate and land on the moon with a computer with less "computing power" than a digital watch?




First of all, it is not less computing power.  After some research (yes, I'are a Google Scholar)  it was a pretty cool bunch of transistors and probably the first digital display in any aerospace machine till that date.  And...


I want to build one!
 



Spock: Captain, I must have some platinum. A small block would be sufficient, five or six pounds. By passing certain circuits through there to be used as a duo-dynetic field core...

Capt. Kirk: [interrupting] Uh, Mr. Spock, I've brought you some assorted vegetables, baloney and a hard roll for myself, and I've spent the other nine tenths of our combined salaries for the last three days on filling this order for you. Mr. Spock, this bag does not contain platinum, silver or gold, nor is it likely to in the near future.

Spock: Captain, you're asking me to work with equipment which is hardly very far ahead of stone knives and bearskins.

For my stone tools, the challenge is to make a 1960s vintage machine from about the same vintage (ca. 1979) parts.  Impossible you say?  Yes, well, almost.  Here is my stone tool:















 This is a RCA COSMAC 1802 microprocessor I built, actually the 3rd one but using parts from the first two  (yes, in my parents basement) ca. 1977 - 1979.  I know this because the notebook it is sitting on has the dates and parts orders, plus notes and other useful information. 

This old machine had been sitting in my garage for at least the last 15 years and other storage for the last 4 decades.  After a little cleaning, replacement of the little red push button that had corroded, some wires, and one LED...it actually still worked!





Reality Bites...

Being able to re-write the entire AGC software is an undertaking that would take years, and require understanding of all the equations and NASA documentation. Not going to happen as a past time.

The second option  is: can this machine run the actual code?  Well, maybe. But a quick mental calculation; it will take perhaps 10 - 100 COSMAC instructions to make each AGC instruction. These two machines run at approximately the same speed ( 2MHz) so the result will be 10 - 100x slower and take that much more memory.

OK so there is a third option...how about just the display?  It would make a nifty looking clock. 


The DSKY!


Beautiful, is it not?   The epitome of  1960's computing user interface technology. 

...Is it just me - or do these displays look like a couple of smart phones?

I wont put all the details here, they are in my  GITHUB. repository.  You an go there and study the details if you like.  It is a work (?) in progress but it really is just a fun diversion project.  There is no real need for us old assembly language programmers anymore - i still do enjoy low-level programming, just something to keep my old brain's spark plugs going a while longer - kind of the geek equivalent to a crossword puzzle.   Here is an early version...it really is just a VIP Clock with the digits re arranged to look like V16N65  The mission elapsed time on the DSKY, the current version is a working proto.:






I may add some more here as i plan to make a second version that does not only time, but navigation ( tied to an old Garmin 12 GPS) and some inertial navigation system measurements (Gyroscope).  This will be a cool addition to my 1960's vintage Dune Buggy eh?

As for running the actual code?  Oh - I think the current ARM boards such as Raspberry Pi could pull it off.


As we like to say on the Rad Ranchero:

~Stay Tuned! ~


...and happy birthday pop - where ever you are! we miss you down here on earth.