Source Code
![]() |
These source-code files were transcribed from scans made from Don Eyles's personal
copy of Luminary 069. They were scanned at archive.org's Boston
facility, and the scanning was sponsored by Onno Hommes. The code was transcribed
from these scans by a team of volunteers who are referenced in the program
comments. Comments from the original source code are prefixed with a single '#' symbol,
whereas comments added later are prefixed by "##" or "###". In some cases, where
similar code blocks exist in previously-transcribed AGC programs (primarily
Luminary 99, from Apollo 11) those code blocks were used as a starting point and
then corrected to agree with the Luminary 69 scans. The full scans are available
at the Virtual AGC
project's collection at archive.org, while more-convenient reduced-size (but reduced-quality)
images are available at
the main Virtual AGC website. Report any errors noted by creating an
issue report at the Virtual AGC
project's GitHub repository. Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 069 OF AGC PROGRAM LUMINARY BY NASA 2021112-011 19:02 NOV. 25,1968Note that the date is the date of the printout, not the date of the program revision. |
002795,000002: ## Copyright: Public domain.
002796,000003: ## Filename: INPUT_OUTPUT_CHANNEL_BIT_DESCRIPTIONS.agc
002797,000004: ## Purpose: The main source file for Luminary revision 069.
002798,000005: ## It is part of the source code for the original release
002799,000006: ## of the flight software for the Lunar Module's (LM) Apollo
002800,000007: ## Guidance Computer (AGC) for Apollo 10. The actual flown
002801,000008: ## version was Luminary 69 revision 2, which included a
002802,000009: ## newer lunar gravity model and only affected module 2.
002803,000010: ## This file is intended to be a faithful transcription, except
002804,000011: ## that the code format has been changed to conform to the
002805,000012: ## requirements of the yaYUL assembler rather than the
002806,000013: ## original YUL assembler.
002807,000014: ## Reference: pp. 70-76
002808,000015: ## Assembler: yaYUL
002809,000016: ## Contact: Ron Burkey <info@sandroid.org>.
002810,000017: ## Website: www.ibiblio.org/apollo/index.html
002811,000018: ## Mod history: 2016-12-13 MAS Created from Luminary 99.
002812,000019: ## 2017-01-03 HG Transcribed
002813,000020: ## 2017-01-25 RSB Proofed comment text using octopus/prooferComments
002814,000021: ## but no errors found.
002815,000022: ## 2017-03-15 RSB Comment-text fixes identified in 5-way
002816,000023: ## side-by-side diff of Luminary 69/99/116/131/210.
002817,000024:
![]() |
Page 70 |
002819,000026:
002820,000027: # *** CHANNEL DESCRIPTIONSF WORDS ARE ALLOCATED IN ERASABLE ASSIGNMENTS ***
002821,000028:
002822,000029: # CHANNEL 1 IDENTICAL TO COMPUTER REGISTER L (0001)
002823,000030:
002824,000031:
002825,000032: # CHANNEL 2 IDENTICAL TO COMPUTER REGISTER Q (0002)
002826,000033:
002827,000034:
002828,000035: # CHANNEL 3 HISCALAR; INPUT CHANNEL; MOST SIGNIFICANT 14 BITS FROM 33 STAGE BINARY COUNTER. SCALE
002829,000036: # FACTOR IS B23 IN CSEC, SO MAX VALUE ABOUT 23.3 HOURS AND LEAST SIGNIFICANT BIT 5.12 SECS.
002830,000037:
002831,000038:
002832,000039: # CHANNEL 4 LOSCALAR; INPUT CHANNEL; NEXT MOST SIGNIFICANT 14 BITS FROM THE 33 STAGE BINARY COUNTER
002833,000040: # ASSOCIATED WITH CHANNEL 3. SCALE FACTOR IS B9 IN CSEC. SO MAX VAL IS 5.12 SEC AND LEAST
002834,000041: # SIGNIFICANT BIT IS 1/3200 SEC. SCALE FACTOR OF D.P. WORD WITH CHANNEL 3 IS B23 CSEC.
002835,000042:
002836,000043:
002837,000044: # CHANNEL 5 PYJETS; OUTPUT CHANNEL; PITCH RCS JET CONTROL. (REACTION CONTROL SYSTEM) USES BITS 1-8.
002838,000045:
002839,000046:
002840,000047: # CHANNEL 6 ROLLJETS; OUTPUT CHANNEL; ROLL RCS JET CONTROL. (REACTION CONTROL SYSTEM) USES BIT 1-8.
002841,000048:
002842,000049:
002843,000050: # CHANNEL 7 SUPERBNK; OUTPUT CHANNEL; NOT RESET BY RESTART; FIXED EXTENSION BITS USED TO SELECT THE
002844,000051: # APPROPRIATE FIXED MEMORY BANK IF FBANK IS 30 OCTAL OR MORE. USES BITS 5-7.
002845,000052:
002846,000053:
002847,000054: # CHANNEL 10 OUTO; OUTPUT CHANNEL; REGISTER USED TO TRANSMIT LATCHING-RELAY DRIVING INFORMATION FOR
002848,000055: # THE DISPLAY SYSTEM. BITS 15-12 ARE SET TO THE ROW NUMBER (1-14 OCTAL) OF THE RELAY TO BE
002849,000056: # CHANGED AND BITS 11-1 CONTAIN THE REQUIRED SETTINGS FOR THE RELAYS IN THE ROW.
002850,000057:
002851,000058:
002852,000059: # CHANNEL 11 DSALMOUT; OUTPUT CHANNEL; REGISTER WHOSE BITS ARE USED FOR ENGINE ON-OFF CONTROL AND TO
002853,000060: # DRIVE INDIVIDUAL INDICATORS OF THE DISPLAY SYSTEM. BITS 1-7 ARE A RELAYS.
002854,000061:
002855,000062: # BIT 1 ISS WARNING
002856,000063:
002857,000064: # BIT 2 LIGHT COMPUTER ACTIVITY LAMP
002858,000065:
002859,000066: # BIT 3 LIGHT UPLINK ACTIVITY LAMP
002860,000067:
002861,000068: # BIT 4 LIGHT TEMP CAUTION LAMP
002862,000069:
002863,000070: # BIT 5 LIGHT KEYBOARD RELEASE LAMP
002864,000071:
002865,000072: # BIT 6 FLASH VERB AND NOUN LAMPS
002866,000073:
002867,000074: # BIT 7 LIGHT OPERATOR ERROR LAMP
002868,000075:
![]() |
Page 71 |
002870,000077:
002871,000078: # BIT 8 SPARE
002872,000079:
002873,000080: # BIT 9 TEST CONNECTOR OUTBIT
002874,000081:
002875,000082: # BIT 10 CAUTION RESET
002876,000083:
002877,000084: # BIT 11 SPARE
002878,000085:
002879,000086: # BIT 12 SPARE
002880,000087:
002881,000088: # BIT 13 ENGINE ON
002882,000089:
002883,000090: # BIT 14 ENGINE OFF
002884,000091:
002885,000092: # BIT 15 SPARE
002886,000093:
002887,000094:
002888,000095: # CHANNEL 12 CHAN12; OUTPUT CHANNEL; BITS USED TO DRIVE NAVIGATION AND SPAECRAFT HARDWARE
002889,000096:
002890,000097: # BIT 1 ZERO RR CDU; CDU'S GIVE RRADAR INFORMATION FOR LM
002891,000098:
002892,000099: # BIT 2 ENABLE CDU RADAR ERROR COUNTERS
002893,000100:
002894,000101: # BIT 3 NOT USED
002895,000102:
002896,000103: # BIT 4 COARSE ALIGN ENABLE OF IMU
002897,000104:
002898,000105: # BIT 5 ZERO IMU CDU'S
002899,000106:
002900,000107: # BIT 6 ENABLE IMU ERROR COUNTER, CDU ERROR COUNTER.
002901,000108:
002902,000109: # BIT 7 SPARE
002903,000110:
002904,000111: # BIT 8 DISPLAY INERTIAL DATA
002905,000112:
002906,000113: # BIT 9 -PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002907,000114:
002908,000115: # BIT 10 +PITCH GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002909,000116:
002910,000117: # BIT 11 -ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002911,000118:
002912,000119: # BIT 12 +ROLL GIMBAL TRIM (BELL MOTION) DESCENT ENGINE
002913,000120:
002914,000121: # BIT 13 LR POSITION 2 COMMAND
002915,000122:
002916,000123: # BIT 14 ENABLE RENDESVOUS RADAR LOCK-ON;AUTO ANGLE TRACK'G
002917,000124:
002918,000125: # BIT 15 ISS TURN ON DELAY COMPLETE
002919,000126:
002920,000127:
![]() |
Page 72 |
002922,000129: # CHANNEL 13 CHAN13; OUTPUT CHANNEL
002923,000130:
002924,000131: # BIT 1 RADAR C PROPER SETTING OF THE A,B,C MATRIX
002925,000132: # BIT 2 RADAR B SELECTS CERTAIN RADAR
002926,000133: # BIT 3 RADAR A PARAMETERS TO BE READ.
002927,000134:
002928,000135: # BIT 4 RADAR ACTIVITY
002929,000136:
002930,000137: # BIT 5 NOT USED (CONNECTS AN ALTERNATE INPUT TO UPLINK)
002931,000138:
002932,000139: # BIT 6 BLOCK INPUTS TO UPLINK CELL
002933,000140:
002934,000141: # BIT 7 DOWNLINK TELEMETRY WORD ORDER CODE BIT
002935,000142:
002936,000143: # BIT 8 RHC COUNTER ENABLE (READ HAND CONTROLLER ANGLES)
002937,000144:
002938,000145: # BIT 9 START RHC READ INTO COUNTERS IF BIT 8 SET
002939,000146:
002940,000147: # BIT 10 TEST ALARMS, TEST DSKY LIGHTS
002941,000148:
002942,000149: # BIT 11 ENABLE STANDBY
002943,000150:
002944,000151: # BIT 12 RESET TRAP 31-A ALWAYS APPEAR TO BE SET TO 0
002945,000152:
002946,000153: # BIT 13 RESET TRAP 31-B ALWAYS APPEAR TO BE SET TO 0
002947,000154:
002948,000155: # BIT 14 RESET TRAP 32 ALWAYS APPEAR TO BE SET TO 0
002949,000156:
002950,000157: # BIT 15 ENABLE T6 RUPT
002951,000158:
002952,000159:
002953,000160: # CHANNEL 14 CHAN14; OUTPUT CHANNEL; USED TO CONTROL COMPUTER COUNTER CELLS (CDU,GYRO,SPACECRAFT FUNC.
002954,000161:
002955,000162: # BIT 1 OUTLINK ACTIVITY (NOT USED)
002956,000163:
002957,000164: # BIT 2 ALTITUDE RATE OR ALTITIDE SELECTOR
002958,000165:
002959,000166: # BIT 3 ALTITUDE METER ACTIVITY
002960,000167:
002961,000168: # BIT 4 THRUST DRIVE ACTIVITY FOR DESCENT ENGINE
002962,000169:
002963,000170: # BIT 5 SPARE
002964,000171:
002965,000172: # BIT 6 GYRO ENABLE POWER FOR PULSES
002966,000173:
002967,000174: # BIT 7 GYRO SELECT B PAIR OF BITS IDENTIFIES AXIS OF -
002968,000175: # BIT 8 GYRO SELECT A GYRO SYSTEM TO BE TORQUED.
002969,000176:
002970,000177: # BIT 9 GYRO TORQUING COMMAND IN NEGATIVE DIRECTION
002971,000178:
002972,000179:
![]() |
Page 73 |
002974,000181: # BIT 10 GYRO ACTIVITY
002975,000182:
002976,000183: # BIT 11 DRIVE CDU S
002977,000184:
002978,000185: # BIT 12 DRIVE CDU T
002979,000186:
002980,000187: # BIT 13 DRIVE CDU Z
002981,000188:
002982,000189: # BIT 14 DRIVE CDU Y
002983,000190:
002984,000191: # BIT 15 DRIVE CDU X
002985,000192:
002986,000193:
002987,000194: # CHANNEL 15 MNKEYIN; INPUT CHANNEL;KEY CODE INPUT FROM KEYBOARD OF DSKY, SENSED BY PROGRAM WHEN
002988,000195: # PROGRAM INTERRUPT #5 IS RECEIVED. USES BITS 5-1
002989,000196:
002990,000197:
002991,000198: # CHANNEL 16 NAVKEYIN; INPUT CHANNEL; OPTICS MARK INFORMATION AND NAVIGA ION PANEL DSKY (CM) OR THRUST
002992,000199: # CONTROL (LM) SENSED BY PROGRAM WHEN PROGRAM INTER-RUPT #6 IS RECEIVED. USES BITS 3-7 ONLY.
002993,000200:
002994,000201: # BIT 1 NOT ASSIGNED
002995,000202:
002996,000203: # BIT 2 NOT ASSIGNED
002997,000204:
002998,000205: # BIT 3 OPTICS X-AXIS MARK SIGNAL FOR ALIGN OPTICAL TSCOPE
002999,000206:
003000,000207: # BIT 4 OPTICS Y-AXIS MARK SIGNAL FOR AOT
003001,000208:
003002,000209: # BIT 5 OPTICS MARK REJECT SIGNAL
003003,000210:
003004,000211: # BIT 6 DESCENT+ ; CREW DESIRED SLOWING RATE OF DESCENT
003005,000212:
003006,000213: # BIT 7 DESCENT- ; CREW DESIRED SPEEDING UP RATE OF D'CENT
003007,000214:
003008,000215:
003009,000216: # NOTE: ALL BITS IN CHANNELS 30-33 ARE INVERTED AS SENSED BY THE PROGRAM, SO THAT A VALUE OF ZERO MEANS
003010,000217: # THAT THE INDICATED SIGNAL IS PRESENT.
003011,000218:
003012,000219:
003013,000220: # CHANNEL 30 INPUT CHANNEL
003014,000221:
003015,000222: # BIT 1 ABORT WITH DESCENT STAGE
003016,000223:
003017,000224: # BIT 2 UNUSED
003018,000225:
003019,000226: # BIT 3 ENGINE ARMED SIGNAL
003020,000227:
003021,000228: # BIT 4 ABORT WITH ASCENT ENGINE STAGE
003022,000229:
003023,000230: # BIT 5 AUTO THROTTLE; COMPUTER CONTROL OF DESCENT ENGINE
003024,000231:
![]() |
Page 74 |
003026,000233: # BIT 6 DISPLAY INERTIAL DATA
003027,000234:
003028,000235: # BIT 7 RR CDU FAIL
003029,000236:
003030,000237: # BIT 8 SPARE
003031,000238:
003032,000239: # BIT 9 IMU OPERATE WITH NO MALFUNCTION
003033,000240:
003034,000241: # BIT 10 LM COMPUTER (NOT AGS) HAS CONTROL OF LM
003035,000242:
003036,000243: # BIT 11 IMU CAGE COMMAND TO DRIVE IMU GIMBAL ANGLES TO 0.
003037,000244:
003038,000245: # BIT 12 IMU CDU FAIL (MALFUNCTION OF IMU CDU,S)
003039,000246:
003040,000247: # BIT 13 IMU FAIL (MALFUNCTION OF IMU STABILIZATION LOOPS)
003041,000248:
003042,000249: # BIT 14 ISS TURN ON REQUESTED
003043,000250:
003044,000251: # BIT 15 TEMPERATURE OF STABLE MEMBER WITHIN DESIGN LIMITS
003045,000252:
003046,000253:
003047,000254: # CHANNEL 31 INPUT CHANNEL; BITS ASSOCIATED WITH THE ATTITUDE CONTROLLER, TRANSLATIONAL CONTROLLER,
003048,000255: # AND SPACECRAFT ATTITUDE CONTROL; USED BY RCS DAP
003049,000256:
003050,000257: # BIT 1 ROTATION (BY RHC) COMMANDED IN POSITIVE PITCH DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
003051,000258: # ALSO POSITIVE ELEVATION CHANGE FOR LANDING POINT DESIGNATOR
003052,000259:
003053,000260: # BIT 2 AS BIT 1 EXCEPT NEGATIVE PITCH AND ELEVATION
003054,000261:
003055,000262: # BIT 3 ROTATION (BY RHC) COMMANDED IN POSITIVE YAW DIRECTION; MUST BE IN MINUMUM IMPULSE MODE.
003056,000263:
003057,000264: # BIT 4 AS BIT 3 EXCEPT NEGATIVE YAW
003058,000265:
003059,000266: # BIT 5 ROTATION (BY RHC) COMMANDED IN POSITIVE ROLL DIRECTION; MUST BE IN MINIMUM IMPULSE MODE.
003060,000267: # ALSO POSITIVE AZIMUTH CHANGE FOR LANDING POINT DESIGNATOR
003061,000268:
003062,000269: # BIT 6 AS BIT 5 EXCEPT NEGATIVE ROLL AND AZIMUTH
003063,000270:
003064,000271: # BIT 7 TRANSLATION IN +X DIRECTION COMMANDED BY THC
003065,000272:
003066,000273: # BIT 8 TRANSLATION IN -X DIRECTION COMMANDED BY THC
003067,000274:
003068,000275: # BIT 9 TRANSLATION IN +Y DIRECTION COMMANDED BY THC
003069,000276:
003070,000277: # BIT 10 TRANSLATION IN -Y DIRECTION COMMANDED BY THC
003071,000278:
003072,000279: # BIT 11 TRANSLATION IN +Z DIRECTION COMMANDED BY THC
003073,000280:
003074,000281: # BIT 12 TRANSLATION IN -Z DIRECTION COMMANDED BY THC
003075,000282:
![]() |
Page 75 |
003077,000284:
003078,000285: # BIT 13 ATTITUDE HOLD MODE ON SCS MODE CONTROL SWITCH
003079,000286:
003080,000287: # BIT 14 AUTO STABILIZATION OF ATTITUDE ON SCS MODE SWITCH
003081,000288:
003082,000289: # BIT 15 ATTITUDE CONTROL OUT OF DETENT (RHC NOT IN NEUTRAL
003083,000290:
003084,000291:
003085,000292: # CHANNEL 32 INPUT CHANNEL.
003086,000293:
003087,000294: # BIT 1 THRUSTERS 2 & 4 DISABLED BY CREW
003088,000295:
003089,000296: # BIT 2 THRUSTERS 5 & 8 DISABLED BY CREW
003090,000297:
003091,000298: # BIT 3 THRUSTERS 1 & 3 DISABLED BY CREW
003092,000299:
003093,000300: # BIT 4 THRUSTERS 6 & 7 DISABLED BY CREW
003094,000301:
003095,000302: # BIT 5 THRUSTERS 14 & 16 DISABLED BY CREW
003096,000303:
003097,000304: # BIT 6 THRUSTERS 13 & 15 DISABLED BY CREW
003098,000305:
003099,000306: # BIT 7 THRUSTERS 9 & 12 DISABLED BY CREW
003100,000307:
003101,000308: # BIT 8 THRUSTERS 10 & 11 DISABLED BY CREW
003102,000309:
003103,000310: # BIT 9 DESCENT ENGINE GIMBALS DISABLED BY CREW
003104,000311:
003105,000312: # BIT 10 APPARENT DESCENT ENGINE GIMBAL FAILURE
003106,000313:
003107,000314: # BIT 14 INDICATES PROCEED KEY IS DEPRESSED
003108,000315:
003109,000316:
003110,000317: # CHANNEL 33 CHAN33; INPUT CHANNEL; FOR HARDWARE STATUS AND COMMAND INFORMATION. BITS 15-11 ARE FLIP-
003111,000318: # FLOP BITS RESET BY A CHANNEL "WRITE" COMMAND THAT ARE RESET BY A RESTART & BY T4RUPT LOOP.
003112,000319:
003113,000320: # BIT 1 SPARE
003114,000321:
003115,000322: # BIT 2 RR AUTO-POWER ON
003116,000323:
003117,000324: # BIT 3 RR RANGE LOW SCALE
003118,000325:
003119,000326: # BIT 4 RR DATA GOOD
003120,000327:
003121,000328: # BIT 5 LR RANGE DATA GOOD
003122,000329:
003123,000330: # BIT 6 LR POS1
003124,000331:
003125,000332: # BIT 7 LR POS2
003126,000333:
003127,000334:
![]() |
Page 76 |
003129,000336: # BIT 8 LR VEL DATA GOOD
003130,000337:
003131,000338: # BIT 9 LR RANGE LOW SCALE
003132,000339:
003133,000340: # BIT 10 BLOCK UPLINK INPUT
003134,000341:
003135,000342: # BIT 11 UPLINK TOO FAST
003136,000343:
003137,000344: # BIT 12 DOWNLINK TOO FAST
003138,000345:
003139,000346: # BIT 13 PIPA FAIL
003140,000347:
003141,000348: # BIT 14 WARNING OF REPEATED ALARMS: RESTART,COUNTER FAIL, VOLTAGE FAIL,AND SCALAR DOUBLE.
003142,000349:
003143,000350: # BIT 15 LGC OSCILLATOR STOPPED
003144,000351:
003145,000352:
003146,000353: # CHANNEL 34 DNT M1; OUTPUT CHANNEL; DOWNLINK 1 FIRST OF TWO WORDS SERIALIZATION.
003147,000354: # 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