Source Code
![]() |
These source-code files derive from a printout of Luminary 210 (Apollo 15-17
Lunar Module guidance computer program), from the personal library of
original AGC developer Don Eyles, digitally photographed at archive.org,
financially sponsored by Jim Lawton, and transcribed to source code by a
team of volunteers. This colorized, syntax-highlighted form was created
by assembling that transcribed source code. Note that the full page images
are available on the
Virtual AGC project page at archive.org, while reduced-size images
are presented at the VirtualAGC project website. Report or fix any
transcription errors at
the Virtual AGC project code repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 210 OF AGC PROGRAM LUMINARY BY NASA 2021112-161 17:11 MAR. 19,1971Note that the date is the date of the printout, not the date of the program revision. |
002110,000002: ## Copyright: Public domain.
002111,000003: ## Filename: INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc
002112,000004: ## Purpose: A section of Luminary revision 210.
002113,000005: ## It is part of the source code for the Lunar Module's (LM)
002114,000006: ## Apollo Guidance Computer (AGC) for Apollo 15-17.
002115,000007: ## This file is intended to be a faithful transcription, except
002116,000008: ## that the code format has been changed to conform to the
002117,000009: ## requirements of the yaYUL assembler rather than the
002118,000010: ## original YUL assembler.
002119,000011: ## Reference: pp. 56-62
002120,000012: ## Assembler: yaYUL
002121,000013: ## Contact: Ron Burkey <info@sandroid.org>.
002122,000014: ## Website: www.ibiblio.org/apollo/index.html
002123,000015: ## Mod history: 2016-11-17 JL Created from Luminary131 version.
002124,000016: ## 2016-11-17 HG Transcribed
002125,000017: ## 2016-12-15 RSB Proofed comment text with octopus/ProoferComments,
002126,000018: ## and corrected the errors found.
002127,000019: ## 2017-03-02 RSB OUT0 --> OUTO.
002128,000020: ## 2017-03-15 RSB Comment-text fixes identified in 5-way
002129,000021: ## side-by-side diff of Luminary 69/99/116/131/210.
002130,000022:
![]() |
Page 56 |
002132,000024:
002133,000025: # *** CHANNEL DESCRIPTIONSF WORDS ARE ALLOCATED IN ERASABLE ASSIGNMENTS ***
002134,000026:
002135,000027: # CHANNEL 1 IDENTICAL TO COMPUTER REGISTER L (0001)
002136,000028:
002137,000029: # CHANNEL 2 IDENTICAL TO COMPUTER REGISTER Q (0002)
002138,000030:
002139,000031: # CHANNEL 3 HISCALAR; INPUT CHANNEL; MOST SIGNIFICANT 14 BITS FROM 33 STAGE BINARY COUNTER. SCALE
002140,000032: # FACTOR IS B23 IN CSEC, SO MAX VALUE ABOUT 23.3 HOURS AND LEAST SIGNIFICANT BIT 5.12 SECS.
002141,000033:
002142,000034: # CHANNEL 4 LOSCALAR; INPUT CHANNEL; NEXT MOST SIGNIFICANT 14 BITS FROM THE 33 STAGE BINARY COUNTER
002143,000035: # ASSOCIATED WITH CHANNEL 3. SCALE FACTOR IS B9 IN CSEC. SO MAX VAL IS 5.12 SEC AND LEAST
002144,000036: # SIGNIFICANT BIT IS 1/3200 SEC. SCALE FACTOR OF D.P. WORD WITH CHANNEL 3 IS B23 CSEC.
002145,000037:
002146,000038: # CHANNEL 5 PYJETS; OUTPUT CHANNEL; PITCH RCS JET CONTROL. (REACTION CONTROL SYSTEM) USES BITS 1-8.
002147,000039:
002148,000040:
002149,000041: # CHANNEL 6 ROLLJETS; OUTPUT CHANNEL; ROLL RCS JET CONTROL. (REACTION CONTROL SYSTEM) USES BIT 1-8.
002150,000042:
002151,000043:
002152,000044: # CHANNEL 7 SUPERBNK; OUTPUT CHANNEL; NOT RESET BY RESTART; FIXED EXTENSION BITS USED TO SELECT THE
002153,000045: # APPROPRIATE FIXED MEMORY BANK IF FBANK IS 30 OCTAL OR MORE. USES BITS 5-7.
002154,000046:
002155,000047:
002156,000048: # CHANNEL 10 OUTO; OUTPUT CHANNEL; REGISTER USED TO TRANSMIT LATCHING-RELAY DRIVING INFORMATION FOR
002157,000049: # THE DISPLAY SYSTEM. BITS 15-12 ARE SET TO THE ROW NUMBER (1-14 OCTAL) OF THE RELAY TO BE
002158,000050: # CHANGED AND BITS 11-1 CONTAIN THE REQUIRED SETTINGS FOR THE RELAYS IN THE ROW.
002159,000051:
002160,000052:
002161,000053: # CHANNEL 11 DSALMOUT; OUTPUT CHANNEL; REGISTER WHOSE BITS ARE USED FOR ENGINE ON-OFF CONTROL AND TO
002162,000054: # DRIVE INDIVIDUAL INDICATORS OF THE DISPLAY SYSTEM. BITS 1-7 ARE A RELAYS.
002163,000055:
002164,000056: # BIT 1 ISS WARNING
002165,000057:
002166,000058: # BIT 2 LIGHT COMPUTER ACTIVITY LAMP
002167,000059:
002168,000060: # BIT 3 LIGHT UPLINK ACTIVITY LAMP
002169,000061:
002170,000062: # BIT 4 LIGHT TEMP CAUTION LAMP
002171,000063:
002172,000064: # BIT 5 LIGHT KEYBOARD RELEASE LAMP
002173,000065:
002174,000066: # BIT 6 FLASH VERB AND NOUN LAMPS
002175,000067:
002176,000068: # BIT 7 LIGHT OPERATOR ERROR LAMP
002177,000069:
![]() |
Page 57 |
002179,000071: # BIT 8 SPARE
002180,000072:
002181,000073: # BIT 9 TEST CONNECTOR OUTBIT
002182,000074:
002183,000075: # BIT 10 CAUTION RESET
002184,000076:
002185,000077: # BIT 11 SPARE
002186,000078:
002187,000079: # BIT 12 SPARE
002188,000080:
002189,000081: # BIT 13 ENGINE ON
002190,000082:
002191,000083: # BIT 14 ENGINE OFF
002192,000084:
002193,000085: # BIT 15 SPARE
002194,000086:
002195,000087:
002196,000088: # CHANNEL 12 CHAN12; OUTPUT CHANNEL; BITS USED TO DRIVE NAVIGATION AND SPAECRAFT HARDWARE
002197,000089:
002198,000090: # BIT 1 ZERO RR CDU; CDU'S GIVE RRADAR INFORMATION FOR LM
002199,000091:
002200,000092: # BIT 2 ENABLE CDU RADAR ERROR COUNTERS
002201,000093:
002202,000094: # BIT 3 NOT USED
002203,000095:
002204,000096: # BIT 4 COARSE ALIGN ENABLE OF IMU
002205,000097:
002206,000098: # BIT 5 ZERO IMU CDU'S
002207,000099:
002208,000100: # BIT 6 ENABLE IMU ERROR COUNTER, CDU ERROR COUNTER.
002209,000101:
002210,000102: # BIT 7 SPARE
002211,000103:
002212,000104: # BIT 8 DISPLAY INERTIAL DATA
002213,000105:
002214,000106: # BIT 9 -PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002215,000107:
002216,000108: # BIT 10 +PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002217,000109:
002218,000110: # BIT 11 -ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002219,000111:
002220,000112: # BIT 12 +ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002221,000113:
002222,000114: # BIT 13 LR POSITION 2 COMMAND
002223,000115:
002224,000116: # BIT 14 ENABLE RENDESVOUS RADAR LOCK-ON; AUTO ANGLE TRACK'G
002225,000117:
002226,000118: # BIT 15 ISS TURN ON DELAY COMPLETE
002227,000119:
002228,000120:
![]() |
Page 58 |
002230,000122: # CHANNEL 13 CHAN13; OUTPUT CHANNEL
002231,000123:
002232,000124: # BIT 1 RADAR C PROPER SETTING OF THE A,B,C MATRIX
002233,000125: # BIT 2 RADAR B SELECTS CERTAIN RADAR
002234,000126: # BIT 3 RADAR A PARAMETERS TO BE READ.
002235,000127:
002236,000128: # BIT 4 RADAR ACTIVITY
002237,000129:
002238,000130: # BIT 5 NOT USED (CONNECTS AN ALTERNATE INPUT TO UPLINK)
002239,000131:
002240,000132: # BIT 6 SPARE
002241,000133:
002242,000134: # BIT 7 DOWNLINK TELEMETRY WORD ORDER CODE BIT
002243,000135:
002244,000136: # BIT 8 RHC COUNTER ENABLE (READ HAND CONTROLLER ANGLES)
002245,000137:
002246,000138: # BIT 9 START RHC READ INTO COUNTERS IF BIT 8 SET
002247,000139:
002248,000140: # BIT 10 TEST ALARMS, TEST DSKY LIGHTS
002249,000141:
002250,000142: # BIT 11 ENABLE STANDBY
002251,000143:
002252,000144: # BIT 12 RESET TRAP 31-A ALWAYS APPEAR TO BE SET TO 0
002253,000145:
002254,000146: # BIT 13 RESET TRAP 31-B ALWAYS APPEAR TO BE SET TO 0
002255,000147:
002256,000148: # BIT 14 RESET TRAP 32 ALWAYS APPEAR TO BE SET TO 0
002257,000149:
002258,000150: # BIT 15 ENABLE T6 RUPT
002259,000151:
002260,000152:
002261,000153: # CHANNEL 14 CHAN14; OUTPUT CHANNEL; USED TO CONTROL COMPUTER COUNTER CELLS (CDU,GYRO,SPACECRAFT FUNC.
002262,000154:
002263,000155: # BIT 1 OUTLINK ACTIVITY (NOT USED)
002264,000156:
002265,000157: # BIT 2 ALTITUDE RATE OR ALTITIDE SELECTOR
002266,000158:
002267,000159: # BIT 3 ALTITUDE METER ACTIVITY
002268,000160:
002269,000161: # BIT 4 THRUST DRIVE ACTIVITY FOR DESCENT ENGINE
002270,000162:
002271,000163: # BIT 5 SPARE
002272,000164:
002273,000165: # BIT 6 GYRO ENABLE POWER FOR PULSES
002274,000166:
002275,000167: # BIT 7 GYRO SELECT B PAIR OF BITS IDENTIFIES AXIS OF -
002276,000168: # BIT 8 GYRO SELECT A GYRO SYSTEM TO BE TORQUED.
002277,000169:
002278,000170: # BIT 9 GYRO TORQUING COMMAND IN NEGATIVE DIRECTION
002279,000171:
002280,000172:
![]() |
Page 59 |
002282,000174: # BIT 10 GYRO ACTIVITY
002283,000175:
002284,000176: # BIT 11 DRIVE CDU S
002285,000177:
002286,000178: # BIT 12 DRIVE CDU T
002287,000179:
002288,000180: # BIT 13 DRIVE CDU Z
002289,000181:
002290,000182: # BIT 14 DRIVE CDU Y
002291,000183:
002292,000184: # BIT 15 DRIVE CDU X
002293,000185:
002294,000186:
002295,000187: # CHANNEL 15 MNKEYIN; INPUT CHANNEL;KEY CODE INPUT FROM KEYBOARD OF DSKY, SENSED BY PROGRAM WHEN
002296,000188: # PROGRAM INTERRUPT #5 IS RECEIVED. USES BITS 5-1
002297,000189:
002298,000190:
002299,000191: # CHANNEL 16 NAVKEYIN; INPUT CHANNEL; OPTICS MARK INFORMATION AND NAVIGA ION PANEL DSKY (CM) OR THRUST
002300,000192: # CONTROL (LM) SENSED BY PROGRAM WHEN PROGRAM INTER-RUPT #6 IS RECEIVED. USES BITS 3-7 ONLY.
002301,000193:
002302,000194: # BIT 1 NOT ASSIGNED
002303,000195:
002304,000196: # BIT 2 NOT ASSIGNED
002305,000197:
002306,000198: # BIT 3 OPTICS X-AXIS MARK SIGNAL FOR ALIGN OPTICAL TSCOPE
002307,000199:
002308,000200: # BIT 4 OPTICS Y-AXIS MARK SIGNAL FOR AOT
002309,000201:
002310,000202: # BIT 5 OPTICS MARK REJECT SIGNAL
002311,000203:
002312,000204: # BIT 6 DESCENT+ ; CREW DESIRED SLOWING RATE OF DESCENT
002313,000205:
002314,000206: # BIT 7 DESCENT- ; CREW DESIRED SPEEDING UP RATE OF D'CENT
002315,000207:
002316,000208:
002317,000209: # NOTE: ALL BITS IN CHANNELS 30-33 ARE INVERTED AS SENSED BY THE PROGRAM, SO THAT A VALUE OF ZERO MEANS
002318,000210: # THAT THE INDICATED SIGNAL IS PRESENT.
002319,000211:
002320,000212:
002321,000213: # CHANNEL 30 INPUT CHANNEL
002322,000214:
002323,000215: # BIT 1 ABORT WITH DESCENT STAGE
002324,000216:
002325,000217: # BIT 2 UNUSED
002326,000218:
002327,000219: # BIT 3 ENGINE ARMED SIGNAL
002328,000220:
002329,000221: # BIT 4 ABORT WITH ASCENT ENGINE STAGE
002330,000222:
002331,000223: # BIT 5 AUTO THROTTLE; COMPUTER CONTROL OF DESCENT ENGINE
002332,000224:
![]() |
Page 60 |
002334,000226: # BIT 6 DISPLAY INERTIAL DATA
002335,000227:
002336,000228: # BIT 7 RR CDU FAIL
002337,000229:
002338,000230: # BIT 8 SPARE
002339,000231:
002340,000232: # BIT 9 IMU OPERATE WITH NO MALFUNCTION
002341,000233:
002342,000234: # BIT 10 LM COMPUTER (NOT AGS) HAS CONTROL OF LM
002343,000235:
002344,000236: # BIT 11 IMU CAGE COMMAND TO DRIVE IMU GIMBAL ANGLES TO 0.
002345,000237:
002346,000238: # BIT 12 IMU CDU FAIL (MALFUNCTION OF IMU CDU,S)
002347,000239:
002348,000240: # BIT 13 IMU FAIL (MALFUNCTION OF IMU STABILIZATION LOOPS)
002349,000241:
002350,000242: # BIT 14 ISS TURN ON REQUESTED
002351,000243:
002352,000244: # BIT 15 TEMPERATURE OF STABLE MEMBER WITHIN DESIGN LIMITS
002353,000245:
002354,000246:
002355,000247: # CHANNEL 31 INPUT CHANNEL; BITS ASSOCIATED WITH THE ATTITUDE CONTROLLER, TRANSLATIONAL CONTROLLER,
002356,000248: # AND SPACECRAFT ATTITUDE CONTROL; USED BY RCS DAP
002357,000249:
002358,000250: # BIT 1 ROTATION (BY RHC) COMMANDED IN POSITIVE PITCH DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
002359,000251: # ALSO POSITIVE ELEVATION CHANGE FOR LANDING POINT DESIGNATOR
002360,000252:
002361,000253: # BIT 2 AS BIT 1 EXCEPT NEGATIVE PITCH AND ELEVATION
002362,000254:
002363,000255: # BIT 3 ROTATION (BY RHC) COMMANDED IN POSITIVE YAW DIRECTION; MUST BE IN MINUMUM IMPULSE MODE.
002364,000256:
002365,000257: # BIT 4 AS BIT 3 EXCEPT NEGATIVE YAW
002366,000258:
002367,000259: # BIT 5 ROTATION (BY RHC) COMMANDED IN POSITIVE ROLL DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
002368,000260: # ALSO POSITIVE AZIMUTH CHANGE FOR LANDING POINT DESIGNATOR
002369,000261:
002370,000262: # BIT 6 AS BIT 5 EXCEPT NEGATIVE ROLL AND AZIMUTH
002371,000263:
002372,000264: # BIT 7 TRANSLATION IN +X DIRECTION COMMANDED BY THC
002373,000265:
002374,000266: # BIT 8 TRANSLATION IN -X DIRECTION COMMANDED BY THC
002375,000267:
002376,000268: # BIT 9 TRANSLATION IN +Y DIRECTION COMMANDED BY THC
002377,000269:
002378,000270: # BIT 10 TRANSLATION IN -Y DIRECTION COMMANDED BY THC
002379,000271:
002380,000272: # BIT 11 TRANSLATION IN +Z DIRECTION COMMANDED BY THC
002381,000273:
002382,000274: # BIT 12 TRANSLATION IN -Z DIRECTION COMMANDED BY THC
002383,000275:
![]() |
Page 61 |
002385,000277:
002386,000278: # BIT 13 ATTITUDE HOLD MODE ON SCS MODE CONTROL SWITCH
002387,000279:
002388,000280: # BIT 14 AUTO STABILIZATION OF ATTITUDE ON SCS MODE SWITCH
002389,000281:
002390,000282: # BIT 15 ATTITUDE CONTROL OUT OF DETENT (RHC NOT IN NEUTRAL
002391,000283:
002392,000284:
002393,000285: # CHANNEL 32 INPUT CHANNEL.
002394,000286:
002395,000287: # BIT 1 THRUSTERS 2 & 4 DISABLED BY CREW
002396,000288:
002397,000289: # BIT 2 THRUSTERS 5 & 8 DISABLED BY CREW
002398,000290:
002399,000291: # BIT 3 THRUSTERS 1 & 3 DISABLED BY CREW
002400,000292:
002401,000293: # BIT 4 THRUSTERS 6 & 7 DISABLED BY CREW
002402,000294:
002403,000295: # BIT 5 THRUSTERS 14 & 16 DISABLED BY CREW
002404,000296:
002405,000297: # BIT 6 THRUSTERS 13 & 15 DISABLED BY CREW
002406,000298:
002407,000299: # BIT 7 THRUSTERS 9 & 12 DISABLED BY CREW
002408,000300:
002409,000301: # BIT 8 THRUSTERS 10 & 11 DISABLED BY CREW
002410,000302:
002411,000303: # BIT 9 DESCENT ENGINE GIMBALS DISABLED BY CREW
002412,000304:
002413,000305: # BIT 10 APPARENT DESCENT ENGINE GIMBAL FAILURE
002414,000306:
002415,000307: # BIT 14 INDICATES PROCEED KEY IS DEPRESSED
002416,000308:
002417,000309:
002418,000310: # CHANNEL 33 CHAN33; INPUT CHANNEL; FOR HARDWARE STATUS AND COMMAND INFORMATION. BITS 15-11 ARE FLIP-
002419,000311: # FLOP BITS RESET BY A CHANNEL "WRITE" COMMAND THAT ARE RESET BY A RESTART & BY T4RUPT LOOP.
002420,000312:
002421,000313: # BIT 1 SPARE
002422,000314:
002423,000315: # BIT 2 RR AUTO-POWER ON
002424,000316:
002425,000317: # BIT 3 RR RANGE LOW SCALE
002426,000318:
002427,000319: # BIT 4 RR DATA GOOD
002428,000320:
002429,000321: # BIT 5 LR RANGE DATA GOOD
002430,000322:
002431,000323: # BIT 6 LR POS1
002432,000324:
002433,000325: # BIT 7 LR POS2
002434,000326:
002435,000327:
002436,000328:
![]() |
Page 62 |
002438,000330: # BIT 8 LR VEL DATA GOOD
002439,000331:
002440,000332: # BIT 9 LR RANGE LOW SCALE
002441,000333:
002442,000334: # BIT 10 BLOCK UPLINK INPUT
002443,000335:
002444,000336: # BIT 11 UPLINK TOO FAST
002445,000337:
002446,000338: # BIT 12 DOWNLINK TOO FAST
002447,000339:
002448,000340: # BIT 13 PIPA FAIL
002449,000341:
002450,000342: # BIT 14 WARNING OF REPEATED ALARMS: RESTART,COUNTER FAIL, VOLTAGE FAIL,AND SCALAR DOUBLE.
002451,000343:
002452,000344: # BIT 15 LGC OSCILLATOR STOPPED
002453,000345:
002454,000346:
002455,000347: # CHANNEL 34 DNT M1; OUTPUT CHANNEL; DOWNLINK 1 FIRST OF TWO WORDS SERIALIZATION.
002456,000348: # CHANNEL 35 DNT M2; OUTPUT CHANNEL DOWNLINK 2 SOCOND OF TWO WORDS SERIALIZATION.
End of include-file INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc. Parent file is MAIN.agc