Source Code

This source code is very close to the Apollo Guidance Computer software for the Apollo 13 Lunar module. This revision of the Luminary 131 program is from December of 1969, whereas there was a later revision in January of 1970, and still another revision in February, which is the code that flew on the mission. As far as this transcription is concerned, it was originally from a copy made in 1991 of a printout from the collection of AGC developer Don Eyles for collector David Craig. It was subsequently scanned by Gary Neff, reprocessed for online presentation at the now-discontinued History of Recent Science and Technology (HRST) website of MIT's Dibner Institute (the full-quality scans being discarded in the process), and finally transcribed by Ron Burkey for the Virtual AGC Project. Although a high-quality replacement scan for a completely illegible page was later provided by Gary Neff, the reduced legibility of the reprocessed HRST posting nevertheless caused many errors to be introduced into the transcription. Accordingly, a second scan of the same physical printout was made in 2017 for the Virtual AGC Project's collection at the Internet Archive, and used to correct the transcription errors. All of the scanned materials mentioned, as well as other Luminary 131 related material, are available online. Don Eyles apprently made additional hand-written notes in printout between 1991 and 2017, so the two scans are not identical in that respect. The page-headings in the printout read, in part:
	GAP:  ASSEMBLE REVISION 131 OF AGC PROGRAM LUMINARY BY NASA 2021112-091
	17:53 DEC. 19, 1969
Note that the date is the date the printout was made, not the date on which the program revision was released, although these happen to be very close together.

002073,000002:                                                                                                  ## Copyright:   Public domain.
002074,000003:                                                                                                  ## Filename:    INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc
002075,000004:                                                                                                  ## Purpose:     The main source file for Luminary 1C, revision 131.
002076,000005:                                                                                                  ##              It is part of the source code for the Lunar Module's (LM)
002077,000006:                                                                                                  ##              Apollo Guidance Computer (AGC) for Apollo 13.
002078,000007:                                                                                                  ## Assembler:   yaYUL
002079,000008:                                                                                                  ## Reference:   pp. 54-60
002080,000009:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
002081,000010:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
002082,000011:                                                                                                  ## Mod history: 04/23/03 RSB.   Began.
002083,000012:                                                                                                  ##              05/14/05 RSB    Corrected website reference above.
002084,000013:                                                                                                  ##              2017-01-06 RSB  Page numbers now agree with those on the
002085,000014:                                                                                                  ##                              original hardcopy, as opposed to the PDF page
002086,000015:                                                                                                  ##                              numbers in 1701.pdf.
002087,000016:                                                                                                  ##              2017-02-12 RSB  Proofed comment text using octopus/ProoferComments.
002088,000017:                                                                                                  ##              2017-03-02 RSB  OUT0 --> OUTO.
002089,000018: 

Page 54

002091,000020: 
002092,000021:                                                                                                  #  *** CHANNEL DESCRIPTIONSF WORDS ARE ALLOCATED IN ERASABLE ASSIGNMENTS ***
002093,000022: 
002094,000023:                                                                                                  #  CHANNEL 1     IDENTICAL TO COMPUTER REGISTER L (0001)
002095,000024: 
002096,000025:                                                                                                  #  CHANNEL 2     IDENTICAL TO COMPUTER REGISTER Q (0002)
002097,000026: 
002098,000027:                                                                                                  #  CHANNEL 3     HISCALAR; INPUT CHANNEL; MOST SIGNIFICANT 14 BITS FROM 33 STAGE BINARY COUNTER. SCALE
002099,000028:                                                                                                  #                FACTOR IS B23 IN CSEC, SO MAX VALUE ABOUT 23.3 HOURS AND LEAST SIGNIFICANT BIT 5.12 SECS.
002100,000029: 
002101,000030:                                                                                                  #  CHANNEL 4     LOSCALAR; INPUT CHANNEL; NEXT MOST SIGNIFICANT 14 BITS FROM THE 33 STAGE BINARY COUNTER
002102,000031:                                                                                                  #                ASSOCIATED WITH CHANNEL 3.  SCALE FACTOR IS B9 IN CSEC. SO MAX VAL IS 5.12 SEC AND LEAST
002103,000032:                                                                                                  #                SIGNIFICANT BIT IS 1/3200 SEC. SCALE FACTOR OF D.P. WORD WITH CHANNEL 3 IS B23 CSEC.
002104,000033: 
002105,000034:                                                                                                  #  CHANNEL 5     PYJETS;  OUTPUT CHANNEL; PITCH RCS JET CONTROL.  (REACTION CONTROL SYSTEM) USES BITS 1-8.
002106,000035: 
002107,000036:                                                                                                  #  CHANNEL 6     ROLLJETS; OUTPUT CHANNEL; ROLL RCS JET CONTROL.  (REACTION CONTROL SYSTEM) USES BIT 1-8.
002108,000037: 
002109,000038:                                                                                                  #  CHANNEL 7     SUPERBNK; OUTPUT CHANNEL; NOT RESET BY RESTART; FIXED EXTENSION BITS USED TO SELECT THE
002110,000039:                                                                                                  #                APPROPRIATE FIXED MEMORY BANK IF FBANK IS 30 OCTAL OR MORE.  USES BITS 5-7.
002111,000040: 
002112,000041:                                                                                                  #  CHANNEL 10    OUTO; OUTPUT CHANNEL; REGISTER USED TO TRANSMIT LATCHING-RELAY DRIVING INFORMATION FOR
002113,000042:                                                                                                  #                THE DISPLAY SYSTEM.  BITS 15-12 ARE SET TO THE ROW NUMBER (1-14 OCTAL) OF THE RELAY TO BE
002114,000043:                                                                                                  #                CHANGED AND BITS 11-1 CONTAIN THE REQUIRED SETTINGS FOR THE RELAYS IN THE ROW.
002115,000044: 
002116,000045:                                                                                                  #  CHANNEL 11    DSALMOUT; OUTPUT CHANNEL; REGISTER WHOSE BITS ARE USED FOR ENGINE ON-OFF CONTROL AND TO
002117,000046:                                                                                                  #                DRIVE INDIVIDUAL INDICATORS OF THE DISPLAY SYSTEM.  BITS 1-7 ARE A RELAYS.
002118,000047: 
002119,000048:                                                                                                  #                BIT 1           ISS WARNING
002120,000049:                                                                                                  #                BIT 2           LIGHT COMPUTER ACTIVITY LAMP
002121,000050:                                                                                                  #                BIT 3           LIGHT UPLINK ACTIVITY LAMP
002122,000051:                                                                                                  #                BIT 4           LIGHT TEMP CAUTION LAMP
002123,000052:                                                                                                  #                BIT 5           LIGHT KEYBOARD RELEASE LAMP
002124,000053:                                                                                                  #                BIT 6           FLASH VERB AND NOUN LAMPS
002125,000054:                                                                                                  #                BIT 7           LIGHT OPERATOR ERROR LAMP

Page 55

002127,000056:                                                                                                  #                BIT 8           SPARE
002128,000057:                                                                                                  #                BIT 9           TEST CONNECTOR OUTBIT
002129,000058:                                                                                                  #                BIT 10          CAUTION RESET
002130,000059:                                                                                                  #                BIT 11          SPARE
002131,000060:                                                                                                  #                BIT 12          SPARE
002132,000061:                                                                                                  #                BIT 13          ENGINE ON
002133,000062:                                                                                                  #                BIT 14          ENGINE OFF
002134,000063:                                                                                                  #                BIT 15          SPARE
002135,000064: 
002136,000065:                                                                                                  #  CHANNEL 12    CHAN12; OUTPUT CHANNEL; BITS USED TO DRIVE NAVIGATION AND SPAECRAFT HARDWARE
002137,000066: 
002138,000067:                                                                                                  #                BIT 1           ZERO RR CDU; CDU'S GIVE RRADAR INFORMATION FOR LM
002139,000068:                                                                                                  #                BIT 2           ENABLE CDU RADAR ERROR COUNTERS
002140,000069:                                                                                                  #                BIT 3           NOT USED
002141,000070:                                                                                                  #                BIT 4           COARSE ALIGN ENABLE OF IMU
002142,000071:                                                                                                  #                BIT 5           ZERO IMU CDU'S
002143,000072:                                                                                                  #                BIT 6           ENABLE IMU ERROR COUNTER, CDU ERROR COUNTER.
002144,000073:                                                                                                  #                BIT 7           SPARE
002145,000074:                                                                                                  #                BIT 8           DISPLAY INERTIAL DATA
002146,000075:                                                                                                  #                BIT 9           -PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002147,000076:                                                                                                  #                BIT 10          +PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002148,000077:                                                                                                  #                BIT 11          -ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002149,000078:                                                                                                  #                BIT 12          +ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002150,000079:                                                                                                  #                BIT 13          LR POSITION 2 COMMAND
002151,000080:                                                                                                  #                BIT 14          ENABLE RENDESVOUS RADAR LOCK-ON; AUTO ANGLE TRACK'G
002152,000081:                                                                                                  #                BIT 15          ISS TURN ON DELAY COMPLETE
002153,000082: 

Page 56

002155,000084:                                                                                                  #  CHANNEL 13    CHAN13; OUTPUT CHANNEL
002156,000085: 
002157,000086:                                                                                                  #                BIT 1           RADAR C         PROPER SETTING OF THE A,B,C MATRIX
002158,000087:                                                                                                  #                BIT 2           RADAR B         SELECTS CERTAIN RADAR
002159,000088:                                                                                                  #                BIT 3           RADAR A         PARAMETERS TO BE READ.
002160,000089:                                                                                                  #                BIT 4           RADAR ACTIVITY
002161,000090:                                                                                                  #                BIT 5           NOT USED (CONNECTS AN ALTERNATE INPUT TO UPLINK)
002162,000091:                                                                                                  #                BIT 6           SPARE
002163,000092:                                                                                                  #                BIT 7           DOWNLINK TELEMETRY WORD ORDER CODE BIT
002164,000093:                                                                                                  #                BIT 8           RHC COUNTER ENABLE (READ HAND CONTROLLER ANGLES)
002165,000094:                                                                                                  #                BIT 9           START RHC READ INTO COUNTERS IF BIT 8 SET
002166,000095:                                                                                                  #                BIT 10          TEST ALARMS, TEST DSKY LIGHTS
002167,000096:                                                                                                  #                BIT 11          ENABLE STANDBY
002168,000097:                                                                                                  #                BIT 12          RESET TRAP 31-A         ALWAYS APPEAR TO BE SET TO 0
002169,000098:                                                                                                  #                BIT 13          RESET TRAP 31-B         ALWAYS APPEAR TO BE SET TO 0
002170,000099:                                                                                                  #                BIT 14          RESET TRAP 32           ALWAYS APPEAR TO BE SET TO 0
002171,000100:                                                                                                  #                BIT 15          ENABLE T6 RUPT
002172,000101: 
002173,000102:                                                                                                  #  CHANNEL 14    CHAN14; OUTPUT CHANNEL; USED TO CONTROL COMPUTER COUNTER CELLS (CDU, GYRO, SPACECRAFT FUNC.
002174,000103: 
002175,000104:                                                                                                  #                BIT 1           OUTLINK ACTIVITY (NOT USED)
002176,000105:                                                                                                  #                BIT 2           ALTITUDE RATE OR ALTITIDE SELECTOR
002177,000106:                                                                                                  #                BIT 3           ALTITUDE METER ACTIVITY
002178,000107:                                                                                                  #                BIT 4           THRUST DRIVE ACTIVITY FOR DESCENT ENGINE
002179,000108:                                                                                                  #                BIT 5           SPARE
002180,000109:                                                                                                  #                BIT 6           GYRO ENABLE POWER FOR PULSES
002181,000110:                                                                                                  #                BIT 7           GYRO SELECT B           PAIR OF BITS IDENTIFIES AXIS OF -
002182,000111:                                                                                                  #                BIT 8           GYRO SELECT A           GYRO SYSTEM TO BE TORQUED.
002183,000112:                                                                                                  #                BIT 9           GYRO TORQUING COMMAND IN NEGATIVE DIRECTION

Page 57

002185,000114:                                                                                                  #                BIT 10          GYRO ACTIVITY
002186,000115:                                                                                                  #                BIT 11          DRIVE CDU S
002187,000116:                                                                                                  #                BIT 12          DRIVE CDU T
002188,000117:                                                                                                  #                BIT 13          DRIVE CDU Z
002189,000118:                                                                                                  #                BIT 14          DRIVE CDU Y
002190,000119:                                                                                                  #                BIT 15          DRIVE CDU X
002191,000120: 
002192,000121:                                                                                                  #  CHANNEL 15    MNKEYIN; INPUT CHANNEL; KEY CODE INPUT FROM KEYBOARD OF DSKY, SENSED BY PROGRAM WHEN
002193,000122:                                                                                                  #                PROGRAM INTERRUPT #5 IS RECEIVED.  USES BITS 5-1
002194,000123: 
002195,000124:                                                                                                  #  CHANNEL 16    NAVKEYIN; INPUT CHANNEL; OPTICS MARK INFORMATION AND NAVIGA ION PANEL DSKY (CM) OR THRUST
002196,000125:                                                                                                  #                CONTROL (LM) SENSED BY PROGRAM WHEN PROGRAM INTER-RUPT #6 IS RECEIVED.  USES BITS 3-7 ONLY.
002197,000126: 
002198,000127:                                                                                                  #                BIT 1           NOT ASSIGNED
002199,000128:                                                                                                  #                BIT 2           NOT ASSIGNED
002200,000129:                                                                                                  #                BIT 3           OPTICS X-AXIS MARK SIGNAL FOR ALIGN OPTICAL TSCOPE
002201,000130:                                                                                                  #                BIT 4           OPTICS Y-AXIS MARK SIGNAL FOR AOT
002202,000131:                                                                                                  #                BIT 5           OPTICS MARK REJECT SIGNAL
002203,000132:                                                                                                  #                BIT 6           DESCENT+ ; CREW DESIRED SLOWING RATE OF DESCENT
002204,000133:                                                                                                  #                BIT 7           DESCENT- ; CREW DESIRED SPEEDING UP RATE OF D'CENT
002205,000134: 
002206,000135:                                                                                                  #  NOTE: ALL BITS IN CHANNELS 30-33 ARE INVERTED AS SENSED BY THE PROGRAM, SO THAT A VALUE OF ZERO MEANS
002207,000136:                                                                                                  #  THAT THE INDICATED SIGNAL IS PRESENT.
002208,000137: 
002209,000138:                                                                                                  #  CHANNEL 30    INPUT CHANNEL
002210,000139: 
002211,000140:                                                                                                  #                BIT 1           ABORT WITH DESCENT STAGE
002212,000141:                                                                                                  #                BIT 2           UNUSED
002213,000142:                                                                                                  #                BIT 3           ENGINE ARMED SIGNAL
002214,000143:                                                                                                  #                BIT 4           ABORT WITH ASCENT ENGINE STAGE
002215,000144:                                                                                                  #                BIT 5           AUTO THROTTLE; COMPUTER CONTROL OF DESCENT ENGINE

Page 58

002217,000146:                                                                                                  #                BIT 6           DISPLAY INERTIAL DATA
002218,000147:                                                                                                  #                BIT 7           RR CDU FAIL
002219,000148:                                                                                                  #                BIT 8           SPARE
002220,000149:                                                                                                  #                BIT 9           IMU OPERATE WITH NO MALFUNCTION
002221,000150:                                                                                                  #                BIT 10          LM COMPUTER (NOT AGS) HAS CONTROL OF LM
002222,000151:                                                                                                  #                BIT 11          IMU CAGE COMMAND TO DRIVE IMU GIMBAL ANGLES TO 0.
002223,000152:                                                                                                  #                BIT 12          IMU CDU FAIL (MALFUNCTION OF IMU CDU,S)
002224,000153:                                                                                                  #                BIT 13          IMU FAIL (MALFUNCTION OF IMU STABILIZATION LOOPS)
002225,000154:                                                                                                  #                BIT 14          ISS TURN ON REQUESTED
002226,000155:                                                                                                  #                BIT 15          TEMPERATURE OF STABLE MEMBER WITHIN DESIGN LIMITS
002227,000156: 
002228,000157:                                                                                                  #  CHANNEL 31    INPUT CHANNEL; BITS ASSOCIATED WITH THE ATTITUDE CONTROLLER, TRANSLATIONAL CONTROLLER,
002229,000158:                                                                                                  #                AND SPACECRAFT ATTITUDE CONTROL; USED BY RCS DAP
002230,000159: 
002231,000160:                                                                                                  #                BIT 1           ROTATION (BY RHC) COMMANDED IN POSITIVE PITCH DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
002232,000161:                                                                                                  #                                ALSO POSITIVE ELEVATION CHANGE FOR LANDING POINT DESIGNATOR
002233,000162:                                                                                                  #                BIT 2           AS BIT 1 EXCEPT NEGATIVE PITCH AND ELEVATION
002234,000163:                                                                                                  #                BIT 3           ROTATION (BY RHC) COMMANDED IN POSITIVE YAW DIRECTION; MUST BE IN MINUMUM IMPULSE MODE.
002235,000164:                                                                                                  #                BIT 4           AS BIT 3 EXCEPT NEGATIVE YAW
002236,000165:                                                                                                  #                BIT 5           ROTATION (BY RHC) COMMANDED IN POSITIVE ROLL DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
002237,000166:                                                                                                  #                                ALSO POSITIVE AZIMUTH CHANGE FOR LANDING POINT DESIGNATOR
002238,000167:                                                                                                  #                BIT 6           AS BIT 5 EXCEPT NEGATIVE ROLL AND AZIMUTH
002239,000168:                                                                                                  #                BIT 7           TRANSLATION IN +X DIRECTION COMMANDED BY THC
002240,000169:                                                                                                  #                BIT 8           TRANSLATION IN -X DIRECTION COMMANDED BY THC
002241,000170:                                                                                                  #                BIT 9           TRANSLATION IN +Y DIRECTION COMMANDED BY THC
002242,000171:                                                                                                  #                BIT 10          TRANSLATION IN -Y DIRECTION COMMANDED BY THC
002243,000172:                                                                                                  #                BIT 11          TRANSLATION IN +Z DIRECTION COMMANDED BY THC
002244,000173:                                                                                                  #                BIT 12          TRANSLATION IN -Z DIRECTION COMMANDED BY THC

Page 59

002246,000175:                                                                                                  #                BIT 13          ATTITUDE HOLD MODE ON SCS MODE CONTROL SWITCH
002247,000176:                                                                                                  #                BIT 14          AUTO STABILIZATION OF ATTITUDE ON SCS MODE SWITCH
002248,000177:                                                                                                  #                BIT 15          ATTITUDE CONTROL OUT OF DETENT (RHC NOT IN NEUTRAL
002249,000178: 
002250,000179:                                                                                                  #  CHANNEL 32    INPUT CHANNEL.
002251,000180: 
002252,000181:                                                                                                  #                BIT 1           THRUSTERS 2 & 4 DISABLED BY CREW
002253,000182:                                                                                                  #                BIT 2           THRUSTERS 5 & 8 DISABLED BY CREW
002254,000183:                                                                                                  #                BIT 3           THRUSTERS 1 & 3 DISABLED BY CREW
002255,000184:                                                                                                  #                BIT 4           THRUSTERS 6 & 7 DISABLED BY CREW
002256,000185:                                                                                                  #                BIT 5           THRUSTERS 14 & 16 DISABLED BY CREW
002257,000186:                                                                                                  #                BIT 6           THRUSTERS 13 & 15 DISABLED BY CREW
002258,000187:                                                                                                  #                BIT 7           THRUSTERS 9 & 12 DISABLED BY CREW
002259,000188:                                                                                                  #                BIT 8           THRUSTERS 10 & 11 DISABLED BY CREW
002260,000189:                                                                                                  #                BIT 9           DESCENT ENGINE GIMBALS DISABLED BY CREW
002261,000190:                                                                                                  #                BIT 10          APPARENT DESCENT ENGINE GIMBAL FAILURE
002262,000191:                                                                                                  #                BIT 14          INDICATES PROCEED KEY IS DEPRESSED
002263,000192: 
002264,000193:                                                                                                  #  CHANNEL 33    CHAN33; INPUT CHANNEL; FOR HARDWARE STATUS AND COMMAND INFORMATION.  BITS 15-11 ARE FLIP-
002265,000194:                                                                                                  #                FLOP BITS RESET BY A CHANNEL "WRITE" COMMAND THAT ARE RESET BY A RESTART & BY T4RUPT LOOP.
002266,000195: 
002267,000196:                                                                                                  #                BIT 1           SPARE
002268,000197:                                                                                                  #                BIT 2           RR AUTO-POWER ON
002269,000198:                                                                                                  #                BIT 3           RR RANGE LOW SCALE
002270,000199:                                                                                                  #                BIT 4           RR DATA GOOD
002271,000200:                                                                                                  #                BIT 5           LR RANGE DATA GOOD
002272,000201:                                                                                                  #                BIT 6           LR POS1
002273,000202:                                                                                                  #                BIT 7           LR POS2

Page 60

002275,000204:                                                                                                  #                BIT 8           LR VEL DATA GOOD
002276,000205:                                                                                                  #                BIT 9           LR RANGE LOW SCALE
002277,000206:                                                                                                  #                BIT 10          BLOCK UPLINK INPUT
002278,000207:                                                                                                  #                BIT 11          UPLINK TOO FAST
002279,000208:                                                                                                  #                BIT 12          DOWNLINK TOO FAST
002280,000209:                                                                                                  #                BIT 13          PIPA FAIL
002281,000210:                                                                                                  #                BIT 14          WARNING OF REPEATED ALARMS: RESTART, COUNTER FAIL, VOLTAGE FAIL, AND SCALAR DOUBLE.
002282,000211:                                                                                                  #                BIT 15          LGC OSCILLATOR STOPPED
002283,000212: 
002284,000213:                                                                                                  #  CHANNEL 34    DNT M1; OUTPUT CHANNEL; DOWNLINK 1  FIRST OF TWO WORDS SERIALIZATION.
002285,000214: 
002286,000215:                                                                                                  #  CHANNEL 35    DNT M2; OUTPUT CHANNEL DOWNLINK 2 SOCOND OF TWO WORDS SERIALIZATION.
002287,000216: 
002288,000217: 

End of include-file INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc.  Parent file is MAIN.agc