Source Code
These source-code files are part of a reconstructed copy of Luminary 163, the
first (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with reconstructed source code for Luminary 173. Changes between revision 163 and 173 were backed out, as described by Luminary memos 157 and 158. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 163 listing would be different. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
010635,000002: ## Copyright: Public domain.
010636,000003: ## Filename: AOTMARK.agc
010637,000004: ## Purpose: A section of Luminary revision 163.
010638,000005: ## It is part of the reconstructed source code for the first
010639,000006: ## (unflown) release of the flight software for the Lunar
010640,000007: ## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
010641,000008: ## The code has been recreated from a reconstructed copy of
010642,000009: ## Luminary 173, as well as Luminary memos 157 amd 158.
010643,000010: ## It has been adapted such that the resulting bugger words
010644,000011: ## exactly match those specified for Luminary 163 in NASA
010645,000012: ## drawing 2021152N, which gives relatively high confidence
010646,000013: ## that the reconstruction is correct.
010647,000014: ## Reference: pp. 251-267
010648,000015: ## Assembler: yaYUL
010649,000016: ## Contact: Ron Burkey <info@sandroid.org>.
010650,000017: ## Website: www.ibiblio.org/apollo/index.html
010651,000018: ## Mod history: 2019-08-21 MAS Created from Luminary 173.
010652,000019:
Page 251 |
010654,000021: 12,2000 BANK 12
010655,000022: 07,2000 SETLOC AOTMARK1
010656,000023: 07,2000 BANK
010657,000024:
010658,000025: 07,2000 E7,1551 EBANK= XYMARK
010659,000026: 07,2000 COUNT* $$/MARK
010660,000027:
010661,000028: 07,2000 00004 AOTMARK INHINT
010662,000029: 07,2001 11307 CCS MARKSTAT # SEE IF AOTMARK BUSY
010663,000030: 07,2002 02004 TC +2 # MARK SYSTEM BUSY-DO ALARM
010664,000031: 07,2003 02006 TC EXTVBCHK
010665,000032: 07,2004 05653 TC POODOO
010666,000033: 07,2005 20105 OCT 20105
010667,000034:
010668,000035: 07,2006 36245 EXTVBCHK CAF SIX # SEE IF EXT. VERB WORKING
010669,000036: 07,2007 71043 MASK EXTVBACT
010670,000037: 07,2010 10000 CCS A
010671,000038: 07,2011 12044 TCF MKABORT # YES-ABORT
010672,000039:
010673,000040: 07,2012 34752 CAF BIT2 # NO-DISALLOW SOME EXTENDED VERB ACTION
010674,000041: 07,2013 27043 ADS EXTVBACT # BIT2 RESET IN ENDMARK
010675,000042: 07,2014 10400 MKVAC CCS VAC1USE # LOOK FOR A VAC AREA-DO ABORT IF
010676,000043: 07,2015 12031 TCF MKVACFND # NONE AVAILABLE
010677,000044: 07,2016 10454 CCS VAC2USE
010678,000045: 07,2017 12031 TCF MKVACFND
010679,000046: 07,2020 10530 CCS VAC3USE
010680,000047: 07,2021 12031 TCF MKVACFND
010681,000048: 07,2022 10604 CCS VAC4USE
010682,000049: 07,2023 12031 TCF MKVACFND
010683,000050: 07,2024 10660 CCS VAC5USE
010684,000051: 07,2025 12031 TCF MKVACFND
010685,000052: 07,2026 52134 DXCH BUF2
010686,000053: 07,2027 05717 TC BAILOUT1 # ALL VAC AREAS OCCUPIED - ABORT.
010687,000054: 07,2030 31207 OCT 31207
010688,000055:
010689,000056: 07,2031 64752 MKVACFND AD TWO
010690,000057: 07,2032 55307 TS MARKSTAT # STORE VAC ADR IN LOW 9 OF MARKSTAT
010691,000058:
010692,000059: 07,2033 34755 CAF ZERO
010693,000060: 07,2034 51307 INDEX MARKSTAT
010694,000061: 07,2035 53777 TS 0 -1 # ZERO IN VACUSE REG TO SHOW VAC OCCUPIED
010695,000062:
010696,000063: 07,2036 35025 CAF PRIO15
010697,000064: 07,2037 05105 TC FINDVAC # SET UP JOB FOR GETDAT
010698,000065: 07,2040 E7,1551 EBANK= XYMARK
010699,000066: 07,2040 02063 16067 2CADR GETDAT
010700,000067:
010701,000068:
010702,000069: 07,2042 00003 RELINT
010703,000070: 07,2043 14631 TCF SWRETURN
010704,000071:
Page 252 |
010706,000073: 07,2044 52134 MKABORT DXCH BUF2
010707,000074: 07,2045 05717 TC BAILOUT1 # CONFLICT WITH EXTENDED VERB
010708,000075: 07,2046 31211 OCT 31211
010709,000076:
010710,000077: 07,2047 34755 MKRELEAS CAF ZERO
010711,000078: 07,2050 57307 XCH MARKSTAT # SET MARKSTAT TO ZERO
010712,000079: 07,2051 75004 MASK LOW9 # PICK UP VAC AREA ADR
010713,000080: 07,2052 10000 CCS A
010714,000081: 07,2053 50000 INDEX A
010715,000082: 07,2054 54000 TS 0 # SHOW MKVAC AREA AVAILABLE
010716,000083: 07,2055 34753 CAF ONE
010717,000084: 07,2056 04674 TC IBNKCALL
010718,000085: 07,2057 17671 CADR GOODEND # GO WAKE UP CALLING JOB
010719,000086:
Page 253 |
010721,000088: 07,2060 34755 KILLAOT CAF ZERO
010722,000089: 07,2061 55043 TS EXTVBACT # TERMINATE AOTMARK-ALLOW EXT VERB
010723,000090: 07,2062 06001 TC GOTOPOOH
010724,000091: 07,2063 41307 GETDAT CS MARKSTAT # SET BIT12 TO DISCOURAGE MARKRUPT
010725,000092: 07,2064 74740 MASK BIT12 # BIT12 RESET AT GETMARK
010726,000093: 07,2065 27307 ADS MARKSTAT
010727,000094:
010728,000095: 07,2066 32330 CAF V01N71 # DISPLAY DETENT AND STAR CODE
010729,000096: 07,2067 04616 TC BANKCALL
010730,000097: 07,2070 20334 CADR GOMARKF
010731,000098:
010732,000099: 07,2071 12060 TCF KILLAOT # V34-DOES GOTOPOOH
010733,000100: 07,2072 12074 TCF DODAT # V33-PROCEED-USE THIS STAR FOR MARKS
010734,000101: 07,2073 12063 ENTERDAT TCF GETDAT # ENTER-REDISPLAY STAR CODE
010735,000102:
010736,000103: 07,2074 37747 DODAT CAF HIGH9 # PICK DETENT CODE FROM BITS7-9 OF AOTCODE
010737,000104: 07,2075 70734 MASK AOTCODE # AND SEE IF CODE 1 TO 6
010738,000105: 07,2076 00006 EXTEND
010739,000106: 07,2077 74743 MP BIT9
010740,000107: 07,2100 55551 TS XYMARK # STORE DETENT
010741,000108:
010742,000109: 07,2101 00006 EXTEND
010743,000110: 07,2102 62063 BZMF GETDAT # COAS CALIBRATION CODE-NO GOOD HERE
010744,000111:
010745,000112: 07,2103 65661 AD NEG7 # SEE IF DETENT 7 FOR COAS
010746,000113: 07,2104 00006 EXTEND
010747,000114: 07,2105 12107 BZF CODE7
010748,000115:
010749,000116: 07,2106 12123 TCF CODE1TO6
010750,000117:
010751,000118: 07,2107 32331 CODE7 CAF V06N87* # CODE 7, COAS SIGHTING, GET OPTIC AXIS
010752,000119: 07,2110 04616 TC BANKCALL # AZ AND EL OF SIGHTING DEVICE FROM ASTRO
010753,000120: 07,2111 20334 CADR GOMARKF
010754,000121:
010755,000122: 07,2112 12060 TCF KILLAOT # V34-DOES GOTOPOOH
010756,000123: 07,2113 12115 TCF +2 # PROCEED
010757,000124: 07,2114 12107 TCF CODE7 # ON ENTER, RECYCLE
010758,000125: 07,2115 00006 EXTEND
010759,000126: 07,2116 31345 DCA AZ # PICK UP AZ AND EL IN SP 2S COMP
010760,000127: 07,2117 50120 INDEX FIXLOC
010761,000128: 07,2120 52011 DXCH 8D # STORE IN 8D AND 9D OF LOCAL VAC
010762,000129: 07,2121 34755 CAF ZERO # BACKUP SYSTEM TO BE USED
010763,000130: 07,2122 12137 TCF COASCODE # ZERO APPARENT ROTATION
010764,000131:
010765,000132: 07,2123 51551 CODE1TO6 INDEX XYMARK # INDEX AOT POSITION BY DET CODE
010766,000133: 07,2124 31411 CA AOTEL -1
010767,000134: 07,2125 50120 INDEX FIXLOC
010768,000135: 07,2126 54011 TS 9D # STORE ELEVATION IN VAC+9D
010769,000136:
010770,000137: 07,2127 51551 INDEX XYMARK # INDEX DET CODE 1,2 OR 3
Page 254 |
010772,000139: 07,2130 31403 CA AOTAZ -1
010773,000140: 07,2131 50120 INDEX FIXLOC
010774,000141: 07,2132 54010 TS 8D # STORE AZIMUTH IN VAC +8D
010775,000142:
010776,000143: 07,2133 31405 CA AOTAZ +1 # COMPENSATION FOR APPARENT ROTATION OF
010777,000144: 07,2134 00006 EXTEND # AOT FIELD OF VIEW IN LEFT AND RIGTHT
010778,000145: 07,2135 50120 INDEX FIXLOC # DETENTS IS STORED IN VAC +10D IN SP
010779,000146: 07,2136 20010 MSU 8D # PRECISION ONES COMPLEMENT
010780,000147: 07,2137 50120 COASCODE INDEX FIXLOC
010781,000148: 07,2140 54012 TS 10D # ROT ANGLE
010782,000149:
010783,000150: 07,2141 06042 TC INTPRET # COMPUTE X AND Y PLANE VECTORS
010784,000151:
Page 255 |
010786,000153: # THE OPTAXIS SUBROUTINE COMPUTES THE X AND Y MARK PLANE VECS AND
010787,000154: # AND ROTATES THEM THRU THE APPARENT FIELD OF VIEW ROTATION UNIQUE TO AOT
010788,000155: # OPTAXIS USES OANB TO COMPUTE THE OPTIC AXIS
010789,000156: # INPUT-AZIMUTH ANGLE IN SINGLE PREC AT CDU SCALE IN 8D OF JOB VAC
010790,000157: # ELEVATION ANGLE IN SINGLE PREC AT CDU SCALE IN 9D OF JOB VAC
010791,000158: # ROTATION ANGLE IN SINGLE PREC 1S COMP SCALED BY PI IN 10D OF VAC
010792,000159: # OUTPUT-OPTIC AXIS VEC IN NB COORDS IN SCAXIS
010793,000160: # X-MARK PLANE 1/4VEC IN NB COORDS AT 18D OF JOB VAC
010794,000161: # Y-MARK PLANE 1/4VEC IN NB COORDS AT 12D OF JOB VAC
010795,000162:
010796,000163:
010797,000164: 07,2142 77624 OPTAXIS CALL # GO COMPUTE OA AND X AND Y PLANE VECS
010798,000165: 07,2143 10530 OANB
010799,000166: 07,2144 70535 SLOAD SR1 # LOAD APP ROTATION IN ONES COMP
010800,000167: 07,2145 00013 10D # RESCALE BY 2PI
010801,000168: 07,2146 73406 PUSH SIN # 1/2SIN(ROT) 0-1
010802,000169: 07,2147 71525 PDDL COS
010803,000170: 07,2150 74206 PUSH VXSC # 1/2COS(ROT) 2-3
010804,000171: 07,2151 00023 18D
010805,000172: 07,2152 74325 PDDL VXSC # 1/4COS(ROT)UYP 4-9
010806,000173: 07,2153 00001 0
010807,000174: 07,2154 00031 24D # 1/4SIN(ROT)UXP
010808,000175: 07,2155 45445 BVSU STADR # UP 4-9
010809,000176: 07,2156 63762 STODL 12D # YPNB=1/4(COS(ROT)UYP-SIN(ROT)UXP)
010810,000177: 07,2157 65361 VXSC PDDL # UP 2-3 UP 0-1 FOR EXCHANGE
010811,000178: 07,2160 00031 24D # 1/4COS(ROT)UXP PUSH 0-5
010812,000179: 07,2161 53361 VXSC VAD # 1/4SIN(ROT)UYP
010813,000180: 07,2162 00023 18D # UP 0-5
010814,000181: 07,2163 77626 STADR
010815,000182: 07,2164 53754 STOVL 18D # XPNB=1/4(COS(ROT)UXP+SIN(ROT)UYP)
010816,000183: 07,2165 24007 LO6ZEROS # INITIALIZE AVE STAR VEC ACCUMULATOR
010817,000184: 07,2166 02715 STORE STARAD +6
010818,000185: 07,2167 77776 EXIT
010819,000186: 07,2170 12202 TCF GETMKS
010820,000187:
Page 256 |
010822,000189: # THE OANB SUBROUTINE COMPUTES THE OPTIC AXIS OF THE SIGHTING INSTRUMENT
010823,000190: # FROM AZIMUTH AND ELEVATION INPUT FROM THE ASTRONAUT.
010824,000191: # INPUT- AZIMUTH ANGLE IN SINGLE PREC 2S COMP IN 8D OF JOB VAC
010825,000192: # ELEVATION ANGLE IN SINGLE PREC 2S COMP IN 9D OF VAC
010826,000193: # OUTPUT-OPTIC AXIS IN NB COORDS. IN SCAXIS
010827,000194: # X-PLANE 1/2VEC IN NB COORDS AT 24D OF VAC
010828,000195: # Y-PLANE 1/2VEC IN NB COORDS AT 18D OF VAC
010829,000196:
010830,000197: 05,3416 BANK 05
010831,000198: 04,2000 SETLOC AOTMARK2
010832,000199: 04,2000 BANK
010833,000200:
010834,000201: 04,2530 COUNT* $$/MARK
010835,000202:
010836,000203: 04,2530 44001 OANB SETPD STQ
010837,000204: 04,2531 00001 0
010838,000205: 04,2532 02736 GCTR # STORE RETURN
010839,000206: 04,2533 47135 SLOAD RTB
010840,000207: 04,2534 00012 9D # PICK UP SP ELV
010841,000208: 04,2535 21577 CDULOGIC
010842,000209: 04,2536 71406 PUSH COS
010843,000210: 04,2537 73525 PDDL SIN # 1/2COS(ELV) PD 0-1
010844,000211: 04,2540 77626 STADR
010845,000212: 04,2541 60012 STODL SCAXIS # OAX=1/2SIN(ELV)
010846,000213: 04,2542 00011 8D # PICK UP AZ SP
010847,000214: 04,2543 77634 RTB
010848,000215: 04,2544 21577 CDULOGIC
010849,000216: 04,2545 71406 PUSH COS
010850,000217: 04,2546 00025 STORE 20D # STORE UYP(Y) 20-21
010851,000218: 04,2547 73525 PDDL SIN # 1/2COS(AZ) PD 2-3
010852,000219: 04,2550 57406 PUSH DCOMP # PUSH 1/2SIN(AZ) 4-5
010853,000220: 04,2551 14027 STODL 22D # STORE UYP(Z) 22-23
010854,000221: 04,2552 24007 LO6ZEROS
010855,000222: 04,2553 14023 STODL 18D # STORE UYP(X) 18-19 UP 4-5
010856,000223: 04,2554 72405 DMP SL1
010857,000224: 04,2555 00001 0
010858,000225: 04,2556 17767 STODL SCAXIS +2 # OAY=1/2COS(ELV)SIN(AZ)
010859,000226: 04,2557 72405 DMP SL1 # UP 2-3
010860,000227: 04,2560 77626 STADR # UP 0-1
010861,000228: 04,2561 50006 STOVL SCAXIS +4 # OAZ=1/2COS(ELV)COS(AZ)
010862,000229: 04,2562 00023 18D # LOAD UYP VEC
010863,000230: 04,2563 53435 VXV UNIT
010864,000231: 04,2564 03765 SCAXIS # UXP VEC=UYP X OA
010865,000232: 04,2565 00031 STORE 24D # STORE UXP
010866,000233: 04,2566 77650 GOTO
010867,000234: 04,2567 02736 GCTR
010868,000235:
Page 257 |
010870,000237: # SURFSTAR COMPUTES A STAR VECTOR IN SM COORDINATES FOR LUNAR
010871,000238: # SURFACE ALIGNMENT AND EXITS TO AVEIT TO AVERAGE STAR VECTORS.
010872,000239: # GIVEN X-MARK PLANE 1/4 VEC IN NB AT 18D OF LOCAL VAC
010873,000240: # Y-MARK PLANE 1/4 VEC IN NB AT 12D OF LOCAL VAC
010874,000241: # CURSOR SP 2COMP AT POSITION 1 OF INDEXED MARKVAC
010875,000242: # SPIRAL SP 2COMP AT POSITION 3 OF INDEXED MARKVAC
010876,000243: # CDUY,Z,X AT POSITIONS 0,2,4 OF INDEXED MARKVAC
010877,000244: 15,2000 BANK 15
010878,000245: 15,2000 SETLOC P50S
010879,000246: 15,2000 BANK
010880,000247: 15,2000 COUNT* $$/R59
010881,000248:
010882,000249: 15,2000 77773 SURFSTAR VLOAD*
010883,000250: 15,2001 00001 0,1 # PUT X-MARK CDUS IN CDUSPOT FOR TRG*NBSM
010884,000251: 15,2002 00766 STORE CDUSPOT
010885,000252: 15,2003 47133 SLOAD* RTB
010886,000253: 15,2004 00002 1,1 # PICK UP YROT
010887,000254: 15,2005 21577 CDULOGIC
010888,000255: 15,2006 00031 STORE 24D # STORE CURSOR FOR SPIRAL COMP (REVS)
010889,000256: 15,2007 77654 BZE
010890,000257: 15,2010 16171 YZCHK # IF YROT ZERO-SEE IF SROT ZERO
010891,000258: 15,2011 71406 JUSTZY PUSH COS
010892,000259: 15,2012 73525 PDDL SIN # 1/2COS(YROT) 0-1
010893,000260: 15,2013 65361 VXSC PDDL # UP 0-1 1/8SIN(YROT)UXP 0-5
010894,000261: 15,2014 00023 18D
010895,000262: 15,2015 52361 VXSC VSU # UP 0-5
010896,000263: 15,2016 00015 12D # UYP
010897,000264: 15,2017 47256 UNIT VXV
010898,000265: 15,2020 03765 SCAXIS
010899,000266: 15,2021 41456 UNIT PUSH
010900,000267: 15,2022 47133 SLOAD* RTB
010901,000268: 15,2023 00004 3,1 # PICK UP SPIRAL
010902,000269: 15,2024 21577 CDULOGIC
010903,000270: 15,2025 00033 STORE 26D # STORE SPIRAL (REVS)
010904,000271: 15,2026 43225 DSU DAD
010905,000272: 15,2027 00031 24D
010906,000273: 15,2030 32047 ABOUTONE
010907,000274: 15,2031 77605 DMP
010908,000275: 15,2032 32455 DP1/12
010909,000276: 15,2033 00033 STORE 26D # SEP=(360 + SPIRAL - CURSOR)/12
010910,000277: 15,2034 74356 SIN VXSC # UP 0-5
010911,000278: 15,2035 65372 VSL1 PDDL # 1/2SIN(SEP)(UPP X OA) 0-5
010912,000279: 15,2036 00033 26D
010913,000280: 15,2037 74346 COS VXSC
010914,000281: 15,2040 03765 SCAXIS
010915,000282: 15,2041 53372 VSL1 VAD # UP 0-5
010916,000283: 15,2042 45056 JUSTOA UNIT CALL
010917,000284: 15,2043 47671 TRG*NBSM
010918,000285: 15,2044 34031 STCALL 24D # STAR VEC IN SM
010919,000286: 15,2045 16276 AVEIT # GO AVERAGE
010920,000287:
Page 258 |
010922,000289: 15,2046 37777 37775 ABOUTONE 2DEC .99999999
010923,000290:
010924,000291: 15,2050 15,2454 DP1/12 EQUALS DEG30 # .08333333
010925,000292: 07,2171 BANK 7
010926,000293: 07,2000 SETLOC AOTMARK1
010927,000294: 07,2000 BANK
010928,000295: 07,2171 COUNT* $$/MARK
010929,000296: 07,2171 53133 YZCHK SLOAD* BZE # YROT ZERO AND IF SROT ZERO FORCE STAR
010930,000297: 07,2172 00004 3,1 # ALONG OPTIC AXIS
010931,000298: 07,2173 16177 YSZERO
010932,000299: 07,2174 52145 DLOAD GOTO
010933,000300: 07,2175 00031 24D
010934,000301: 07,2176 32011 JUSTZY # SROT NOT ZERO-CONTINUE NORMALLY
010935,000302: 07,2177 52175 YSZERO VLOAD GOTO
010936,000303: 07,2200 03765 SCAXIS
010937,000304: 07,2201 32042 JUSTOA
010938,000305:
Page 259 |
010940,000307: # THE GETMKS ROUTINE INITIALIZES THE SIGHTING MARK PROCEDURE
010941,000308:
010942,000309: 07,2202 34755 GETMKS CAF ZERO # INITIALIZE MARK ID REGISTER AND MARK CNT
010943,000310: 07,2203 55551 TS XYMARK
010944,000311: 07,2204 55550 TS MARKCNTR
010945,000312: 07,2205 35004 CAF LOW9 # ZERO BITS10 TO 15 RETAINING MKVAC ADR
010946,000313: 07,2206 71307 MASK MARKSTAT
010947,000314: 07,2207 55307 TS MARKSTAT
010948,000315: 07,2210 32613 CAF MKVB54* # DISPLAY VB54 INITIALLY
010949,000316: 07,2211 04616 PASTIT TC BANKCALL
010950,000317: 07,2212 20345 CADR GOMARK4
010951,000318:
010952,000319: 07,2213 12060 TCF KILLAOT # V34-DOES GOTOPOOH
010953,000320: 07,2214 12216 TCF MARKCHEX # VB33-PROCEED, GOT MARKS, COMPUTE LOS
010954,000321: 07,2215 12063 TCF GETDAT # ENTER-RECYCLE TO V01N71
010955,000322:
010956,000323: 07,2216 41307 MARKCHEX CS MARKSTAT # SET BIT12 TO DISCOURAGE MARKRUPT
010957,000324: 07,2217 74740 MASK BIT12
010958,000325: 07,2220 27307 ADS MARKSTAT
010959,000326: 07,2221 75004 MASK LOW9
010960,000327: 07,2222 55551 TS XYMARK # JAM MARK VAC ADR IN XYMARK FOR AVESTAR
010961,000328: 07,2223 34755 CAF ZERO
010962,000329: 07,2224 55552 TS MKDEX # SET MKDEX ZERO FOR LOS VEC CNTR
010963,000330: 07,2225 31307 CA MARKSTAT
010964,000331: 07,2226 75015 MASK PRIO3 # SEE IF LAST MK PARI COMPLETE
010965,000332: 07,2227 54001 TS L
010966,000333: 07,2230 35015 CAF PRIO3 # BITS10 AND 11
010967,000334: 07,2231 00006 EXTEND
010968,000335: 07,2232 06001 RXOR LCHAN
010969,000336: 07,2233 00006 EXTEND
010970,000337: 07,2234 12241 BZF AVESTAR # LAST PAIR COMPLETE-GO COMPUTE LOS
010971,000338: 07,2235 11550 CNTCHK CCS MARKCNTR # NO PAIR SHOWING-SEE IF PAIR IN HOLD
010972,000339: 07,2236 12240 TCF +2 # PAIR BURIED-DECREMENT COUNTER
010973,000340: 07,2237 12325 TCF MKALARM # NO PAIR-ALARM
010974,000341: 07,2240 55550 TS MARKCNTR # STORE DECREMENTED COUNTER
010975,000342:
010976,000343: 07,2241 34740 AVESTAR CAF BIT12 # INITIALIZE MKDEX FOR STAR LOS COUNTER
010977,000344: 07,2242 27552 ADS MKDEX # MKDEX WAS INITIALIZED ZERO IN MARKCHEX
010978,000345: 07,2243 41550 CS MARKCNTR
010979,000346: 07,2244 00006 EXTEND
010980,000347: 07,2245 76245 MP SIX # GET C(L) = -6 MARKCNTR
010981,000348: 07,2246 41551 CS XYMARK
010982,000349: 07,2247 60001 AD L # ADD - MARK VAC ADR SET IN MARKCHEX
010983,000350: 07,2250 50120 INDEX FIXLOC
010984,000351: 07,2251 54046 TS X1 # JAM - CDU ADR OF X-MARK IN X1
010985,000352:
010986,000353: 07,2252 30120 CA FIXLOC # SET PD POINTER TO ZERO
010987,000354: 07,2253 54166 TS PUSHLOC
010988,000355:
010989,000356: 07,2254 06042 TC INTPRET
Page 260 |
010991,000358: 07,2255 76614 BON VLOAD*
010992,000359: 07,2256 04307 SURFFLAG # IF ON SURFACE COMPUTE VEC AT SURFSTAR
010993,000360: 07,2257 32000 SURFSTAR
010994,000361: 07,2260 00002 1,1 # PUT Y-MARK CDUS IN CDUSPOT FOR TRG*NBSM
010995,000362: 07,2261 24766 STOVL CDUSPOT
010996,000363: 07,2262 00015 12D # LOAD Y-PLANE VECTOR IN NB
010997,000364: 07,2263 77624 CALL
010998,000365: 07,2264 47671 TRG*NBSM # CONVERT IT TO STABLE MEMBER
010999,000366: 07,2265 76606 PUSH VLOAD*
011000,000367: 07,2266 00001 0,1 # PUT X-MARK CDUS IN CDUSPOT FOR TRG*NBSM
011001,000368: 07,2267 24766 STOVL CDUSPOT
011002,000369: 07,2270 00023 18D # LOAD X-PLANE VECTOR IN NB
011003,000370: 07,2271 77624 CALL
011004,000371: 07,2272 47671 TRG*NBSM # CONVERT IT TO STABLE-MEMBER
011005,000372: 07,2273 53435 VXV UNIT # UNIT(XPSM * YPSM)
011006,000373: 07,2274 77626 STADR
011007,000374: 07,2275 77746 STORE 24D
011008,000375:
011009,000376: 07,2276 63335 AVEIT SLOAD PDVL # N(NUMBER OF VECS) IN 0-1
011010,000377: 07,2277 03553 MKDEX
011011,000378: 07,2300 00031 24D # LOAD CURRENT VECTOR
011012,000379: 07,2301 70322 VSR3 V/SC
011013,000380: 07,2302 00001 0
011014,000381: 07,2303 14031 STODL 24D # VEC/N
011015,000382: 07,2304 00001 0
011016,000383: 07,2305 56225 DSU DDV
011017,000384: 07,2306 16615 DP1/8 # (N-1)/N
011018,000385: 07,2307 53361 VXSC VAD
011019,000386: 07,2310 02715 STARAD +6 # ADD VEC TO PREVIOUSLY AVERAGED VECTOR
011020,000387: 07,2311 00031 24D # (N-1)/N AVESTVEC + VEC/N
011021,000388: 07,2312 02715 STORE STARAD +6 # AVERAGE STAR VECTOR
011022,000389: 07,2313 02767 STORE STARSAV2
011023,000390: 07,2314 77776 EXIT
011024,000391: 07,2315 11550 CCS MARKCNTR # SEE IF ANOTHER MARK PAIR IN MKVAC
011025,000392: 07,2316 12240 TCF AVESTAR -1 # THERE IS-GO GET IT-DECREMENT COUNTER
011026,000393: 07,2317 34756 ENDMARKS CAF FIVE # NO MORE MARKS-TERMINATE AOTMARK
011027,000394: 07,2320 00004 INHINT
011028,000395: 07,2321 05214 TC WAITLIST
011029,000396: 07,2322 E7,1551 EBANK= XYMARK
011030,000397: 07,2322 02047 16067 2CADR MKRELEAS
011031,000398:
011032,000399:
011033,000400: 07,2324 05503 TC ENDMARK
011034,000401:
011035,000402: 07,2325 05600 MKALARM TC ALARM # NOT A PAIR TO PROCESS-DO GETMKS
011036,000403: 07,2326 00111 OCT 111
011037,000404: 07,2327 12202 TCF GETMKS
011038,000405:
011039,000406: 07,2330 00307 V01N71 VN 171
011040,000407: 07,2331 01527 V06N87* VN 687
011041,000408:
Page 261 |
011043,000410: # MARKRUPT IS ENTERED FROM INTERUPT LEAD-INS AND PROCESSES CHANNEL 16
011044,000411: # CAUSED BY X,Y MARK OR MARK REJECT OR BY THE RATE OF DESCENT SWITCH
011045,000412:
011046,000413: 07,2332 54016 MARKRUPT TS BANKRUPT
011047,000414: 07,2333 30033 CA CDUY # STORE CDUS AND TIME NOW-THEN SEE IF
011048,000415: 07,2334 54063 TS ITEMP3 # WE NEED THEM
011049,000416: 07,2335 30034 CA CDUZ
011050,000417: 07,2336 54064 TS ITEMP4
011051,000418: 07,2337 30032 CA CDUX
011052,000419: 07,2340 54065 TS ITEMP5
011053,000420: 07,2341 00006 EXTEND
011054,000421: 07,2342 30025 DCA TIME2
011055,000422: 07,2343 52062 DXCH ITEMP1
011056,000423: 07,2344 56002 XCH Q
011057,000424: 07,2345 54012 TS QRUPT
011058,000425:
011059,000426: 07,2346 34776 CAF OCT140 # SEE IF ROD INPUT HAS BEEN MADE
011060,000427: 07,2347 00006 EXTEND
011061,000428: 07,2350 02016 RAND NAVKEYIN
011062,000429: 07,2351 00006 EXTEND
011063,000430: 07,2352 62355 BZMF MARKEY? # NO, MUST BE A MARKRUPT
011064,000431:
011065,000432: 07,2353 04635 TC POSTJUMP # DESCENT BITS
011066,000433: 07,2354 46451 CADR DESCBITS # DOESN'NT COME BACK
011067,000434:
011068,000435: 07,2355 34740 MARKEY? CAF BIT12 # ARE WE ASKING FOR MARK?
011069,000436: 07,2356 71307 MASK MARKSTAT
011070,000437: 07,2357 10000 CCS A
011071,000438: 07,2360 05301 TC RESUME # DONT WANT MARK OR MKREJECT-DO NOTHING
011072,000439:
011073,000440: 07,2361 11307 CCS MARKSTAT # ARE MARKS BEING ACCEPTED
011074,000441: 07,2362 12366 TCF FINDKEY # THEY ARE-WHICH ONE IS IT
011075,000442: 07,2363 05600 TC ALARM # MARKS NOT BEING ACCEPTED-DO ALARM
011076,000443: 07,2364 00112 OCT 112
011077,000444: 07,2365 05301 TC RESUME
011078,000445:
011079,000446: 07,2366 34747 FINDKEY CAF BIT5 # SEE IF MARK REJECT
011080,000447: 07,2367 00006 EXTEND
011081,000448: 07,2370 02016 RAND NAVKEYIN
011082,000449: 07,2371 10000 CCS A
011083,000450: 07,2372 12453 TCF MKREJ # ITS A MARK REJECT
011084,000451:
011085,000452: 07,2373 34750 CAF BIT4 # SEE IF Y MARK
011086,000453: 07,2374 00006 EXTEND
011087,000454: 07,2375 02016 RAND NAVKEYIN
011088,000455: 07,2376 10000 CCS A
011089,000456:
011090,000457: 07,2377 12414 TCF YMKRUPT # ITS A Y MARK
011091,000458:
011092,000459: 07,2400 34751 CAF BIT3 # SEE IF X MARK
Page 262 |
011094,000461: 07,2401 00006 EXTEND
011095,000462: 07,2402 02016 RAND NAVKEYIN
011096,000463: 07,2403 10000 CCS A
011097,000464: 07,2404 12410 TCF XMKRUPT # ITS A X MARK
011098,000465:
011099,000466: 07,2405 05600 TC ALARM # NO INBITS IN CHANNEL 16
011100,000467: 07,2406 00113 OCT 113
011101,000468:
011102,000469: 07,2407 05301 TC RESUME
011103,000470:
011104,000471: 07,2410 34755 XMKRUPT CAF ZERO
011105,000472: 07,2411 54070 TS RUPTREG1 # SET X MARK STORE INDEX TO ZERO
011106,000473: 07,2412 34742 CAF BIT10
011107,000474: 07,2413 12417 TCF +4
011108,000475: 07,2414 34753 YMKRUPT CAF ONE
011109,000476: 07,2415 54070 TS RUPTREG1 # SET Y MARK STORE INDEX TO ONE
011110,000477: 07,2416 34741 CAF BIT11
011111,000478: 07,2417 55551 TS XYMARK # SET MARK IDENTIFIATION
011112,000479:
011113,000480: 07,2420 02506 TC MARKTYPE # SEE IF SURFACE MARK
011114,000481: 07,2421 12513 TCF SURFSTOR # SURFACE MARK-JUST STORE CDUS
011115,000482:
011116,000483: 07,2422 34736 CAF BIT14 # GOT A MARK-SEE IF MARK PAIR MADE
011117,000484: 07,2423 71307 MASK MARKSTAT
011118,000485: 07,2424 00006 EXTEND
011119,000486: 07,2425 12436 BZF VERIFYMK # NOT A PAIR, NORMAL PROCEDURE
011120,000487: 07,2426 41550 CS MARKCNTR # GOT A PAIR, SEE IF ANOTHER CAN BE MADE
011121,000488: 07,2427 64751 AD FOUR # IF SO, INCREMENT POINTER,CLEAR BITS10,11
011122,000489: 07,2430 00006 EXTEND
011123,000490: 07,2431 62446 BZMF 5MKALARM # HAVE FIVE MARK PAIRS-DONT ALLOW MARK
011124,000491: 07,2432 25550 INCR MARKCNTR # OK FOR ANOTHER PAIR, INCR POINTER
011125,000492: 07,2433 47714 CS PRIO23 # CLEAR BITS10,11,14 FOR NEXT PAIR
011126,000493: 07,2434 71307 MASK MARKSTAT
011127,000494: 07,2435 55307 TS MARKSTAT
011128,000495:
011129,000496: 07,2436 31551 VERIFYMK CA XYMARK
011130,000497: 07,2437 71307 MASK MARKSTAT
011131,000498: 07,2440 10000 CCS A
011132,000499: 07,2441 12443 TCF +2 # THIS MARK NOT DESIRED
011133,000500: 07,2442 12520 TCF VACSTOR # MARK DESIRED - STORE CDUS
011134,000501: 07,2443 05600 TC ALARM
011135,000502: 07,2444 00114 OCT 114
011136,000503: 07,2445 05301 TC RESUME # RESUME-DISPLAY UNCHANGED-WAIT FOR ACTION
011137,000504:
011138,000505: 07,2446 05600 5MKALARM TC ALARM # ATTEMPTING TO MAKE MORE THAN 5 MK PAIRS
011139,000506: 07,2447 00107 OCT 107
011140,000507: 07,2450 02506 TC MARKTYPE # SEE IF SURFACE MARK
011141,000508: 07,2451 12621 TCF DSPV6N79 # IT IS
011142,000509: 07,2452 05301 TC RESUME # DONT CHANGE DISPLAY-DO NOTHING
011143,000510:
Page 263 |
011145,000512: 07,2453 02506 MKREJ TC MARKTYPE # SEE IF SURFACE
011146,000513: 07,2454 12501 TCF SURFREJ # SURFACE-JUST CHECK MARK COUNTER
011147,000514:
011148,000515: 07,2455 35015 CAF PRIO3 # INFLIGHT-SEE IF MARKS MADE
011149,000516: 07,2456 71307 MASK MARKSTAT
011150,000517: 07,2457 10000 CCS A
011151,000518: 07,2460 12464 TCF REJECT # MARKS MADE-REJECT ONE
011152,000519: 07,2461 05600 REJALM TC ALARM # NO MARK TO REJECT-BAD PROCEDURE-ALARM
011153,000520: 07,2462 00115 OCT 115
011154,000521: 07,2463 05301 TC RESUME # DESIRED ACTION DISPLAYED
011155,000522:
011156,000523: 07,2464 44355 REJECT CS PRIO30 # ZERO BIT14,SHOW REJ.,SEE IF MARK SINCE
011157,000524: 07,2465 71307 MASK MARKSTAT # LAST REJECT
011158,000525: 07,2466 64737 AD BIT13
011159,000526: 07,2467 57307 XCH MARKSTAT
011160,000527: 07,2470 74737 MASK BIT13
011161,000528: 07,2471 10000 CCS A
011162,000529: 07,2472 12477 TCF REJECT2 # ANOTHER REJECT SET BIT 10+11 TO ZERO
011163,000530:
011164,000531: 07,2473 41551 CS XYMARK # MARK MADE SINCE REJECT-REJECT MARK IN 1D
011165,000532: 07,2474 71307 RENEWMK MASK MARKSTAT
011166,000533: 07,2475 55307 TS MARKSTAT
011167,000534: 07,2476 12571 TCF REMARK # GO REQUEST NEW MARK ACTION
011168,000535:
011169,000536: 07,2477 45015 REJECT2 CS PRIO3 # ON SECOND REJECT-DISPLAY VB53 AGAIN
011170,000537: 07,2500 12474 TCF RENEWMK
011171,000538:
011172,000539: 07,2501 11550 SURFREJ CCS MARKCNTR # IF MARK DECREMENT COUNTER
011173,000540: 07,2502 12504 TCF +2
011174,000541: 07,2503 12461 TCF REJALM # NO MARKS TO REJECT-ALARM
011175,000542: 07,2504 55550 TS MARKCNTR
011176,000543: 07,2505 05301 TC RESUME
011177,000544:
Page 264 |
011179,000546:
011180,000547:
011181,000548: # MARKTYPE TESTS TO SEE IF LEM ON LUNAR SURFACE. IF IT IS RETURN TO LOC+1
011182,000549:
011183,000550: 07,2506 40104 MARKTYPE CS FLAGWRD8 # SURFFLAG*******TEMPORARY*****
011184,000551: 07,2507 74744 MASK BIT8
011185,000552: 07,2510 10000 CCS A
011186,000553: 07,2511 24002 INCR Q # IF SURFACE MARK REUTNR TO LOC +1
011187,000554: 07,2512 00002 TC Q # IF INFLIGHT MARK RETURN TO LOC +2
011188,000555:
011189,000556: 07,2513 34755 SURFSTOR CAF ZERO # FOR SURFACE MARK ZERO MARK KIND INDEX
011190,000557: 07,2514 54070 TS RUPTREG1
011191,000558:
011192,000559: 07,2515 41307 CS MARKSTAT # SET BITS10,11 TO SHOW SURFACE MARK
011193,000560: 07,2516 75015 MASK PRIO3 # FOR MARKCHEX
011194,000561: 07,2517 27307 ADS MARKSTAT
011195,000562:
011196,000563: 07,2520 35004 VACSTOR CAF LOW9
011197,000564: 07,2521 71307 MASK MARKSTAT # STORE MARK VAC ADR IN RUPTREG2
011198,000565: 07,2522 54071 TS RUPTREG2
011199,000566: 07,2523 00006 EXTEND
011200,000567: 07,2524 30062 DCA ITEMP1 # PICK UP MARKTIME
011201,000568: 07,2525 53562 DXCH TSIGHT # STORE LAST MARK TIME
011202,000569: 07,2526 31550 CA MARKCNTR # 6 X MARKCNTR FOR STORE INDEX
011203,000570: 07,2527 00006 EXTEND
011204,000571: 07,2530 76245 MP SIX
011205,000572: 07,2531 56001 XCH L # GET INDEX FROM LOW ORDER PART
011206,000573: 07,2532 60071 AD RUPTREG2 # SET CDU STORE INDEX TO MARKVAC
011207,000574: 07,2533 26070 ADS RUPTREG1 # INCREMENT VAC PICKUP BY MARK FOR FLIGHT
011208,000575: 07,2534 55552 TS MKDEX # STORE HERE IN CASE OF SURFACE MARK
011209,000576: 07,2535 30063 CA ITEMP3
011210,000577: 07,2536 50070 INDEX RUPTREG1
011211,000578: 07,2537 54000 TS 0 # STORE CDUY
011212,000579: 07,2540 30064 CA ITEMP4
011213,000580: 07,2541 50070 INDEX RUPTREG1
011214,000581: 07,2542 54002 TS 2 # STORE CDUZ
011215,000582: 07,2543 30065 CA ITEMP5
011216,000583: 07,2544 50070 INDEX RUPTREG1
011217,000584: 07,2545 54004 TS 4 # STORE CDUX
011218,000585: 07,2546 02506 TC MARKTYPE # IF SURFACE MARK-JUST DO SURFJOB
011219,000586: 07,2547 12576 TCF SURFJOB
011220,000587:
011221,000588: 07,2550 34737 CAF BIT13 # CLEAR BIT13 TO SHOW MARK MADE
011222,000589: 07,2551 61551 AD XYMARK # SET MARK ID IN MARKSTAT
011223,000590: 07,2552 40000 COM
011224,000591: 07,2553 71307 MASK MARKSTAT
011225,000592: 07,2554 61551 AD XYMARK
011226,000593: 07,2555 55307 TS MARKSTAT
011227,000594: 07,2556 75015 MASK PRIO3 # SEE IF X, Y MARK MADE
011228,000595: 07,2557 54001 TS L
011229,000596:
Page 265 |
011231,000598: 07,2560 35015 CA PRIO3
011232,000599: 07,2561 00006 EXTEND
011233,000600: 07,2562 06001 RXOR LCHAN
011234,000601: 07,2563 10000 CCS A
011235,000602: 07,2564 12571 TCF REMARK # NOT PAIR YET, DISPLAY MARK ACTION
011236,000603: 07,2565 41307 CS MARKSTAT # MARK PAIR COMPLETE-SET BIT14
011237,000604: 07,2566 74736 MASK BIT14
011238,000605: 07,2567 27307 ADS MARKSTAT
011239,000606: 07,2570 12571 TCF REMARK # GO DISPLAY V54
011240,000607:
Page 266 |
011242,000609: 07,2571 35015 REMARK CAF PRIO3 # BITS 10 AND 11
011243,000610: 07,2572 71307 MASK MARKSTAT
011244,000611: 07,2573 00006 EXTEND
011245,000612: 07,2574 74746 MP BIT6 # SHIFT MARK IDS TO BE 0 TO 3 FOR INDEX
011246,000613: 07,2575 55552 TS MKDEX # STORE VERB INDEX
011247,000614: 07,2576 35025 SURFJOB CAF PRIO15
011248,000615: 07,2577 05072 TC NOVAC # ENTER JOB TO CHANGE DISPLAY TO
011249,000616: 07,2600 E7,1551 EBANK= XYMARK # REQUEST NEXT ACTION
011250,000617: 07,2600 02603 16067 2CADR CHANGEVB
011251,000618:
011252,000619:
011253,000620: 07,2602 05301 TC RESUME
011254,000621:
011255,000622: 07,2603 02506 CHANGEVB TC MARKTYPE
011256,000623: 07,2604 12621 TCF DSPV6N79 # SURFACE-DISPLAY V 06 N 79
011257,000624: 07,2605 51552 INDEX MKDEX # INFLIGHT-PICK UP MARK VB INDEX
011258,000625: 07,2606 32610 CAF MKVB54
011259,000626: 07,2607 02211 TC PASTIT # PASTE UP NEXT MK VERB DISPLAY
011260,000627:
011261,000628: # THE FOUR MKVBS ARE INDEXED-THEIR ORDER CANNOT BE CHANGED
011262,000629:
011263,000630: 07,2610 15507 MKVB54 VN 5471 # MAKE X OR Y MARK
011264,000631: 07,2611 15307 MKVB53 VN 5371 # MAKE Y MARK
011265,000632: 07,2612 15107 MKVB52 VN 5271 # MAKE X MARK
011266,000633: 07,2613 15507 MKVB54* VN 5471 # MAKE X OR Y MARK
011267,000634: 07,2614 04000 00000 DP1/8 2DEC .125
011268,000635:
011269,000636: 07,2616 00034 OCT34 OCT 34
011270,000637: 07,2617 01507 V06N71 VN 671
011271,000638: 07,2620 01517 V06N79* VN 679
011272,000639:
Page 267 |
011274,000641: # ROUTINE TO REQUEST CURSOR AND SPIRAL MEASUREMENTS
011275,000642: 07,2621 COUNT* $$/R59
011276,000643:
011277,000644: 07,2621 32620 DSPV6N79 CAF V06N79* # CURSOR-SPIRAL DISPLAY
011278,000645: 07,2622 04616 TC BANKCALL
011279,000646: 07,2623 20334 CADR GOMARKF
011280,000647:
011281,000648: 07,2624 12060 TCF KILLAOT # V34-DOES GOTOPOOH
011282,000649: 07,2625 12633 TCF SURFEND # V33-PROCEED, END MARKING
011283,000650: 07,2626 34746 CAF BIT6 # IF V32(OCT40) IN MPAC DO RECYCLE
011284,000651: 07,2627 70154 MASK MPAC # OTHERWISE IT IS LOAD VB ENTER SO
011285,000652: 07,2630 10000 CCS A # RE-DISPLAY V06N79
011286,000653: 07,2631 12637 TCF SURFAGAN # VB32-RECYCLE
011287,000654: 07,2632 12621 TCF DSPV6N79 # ENTER
011288,000655:
011289,000656: 07,2633 44736 SURFEND CS BIT14 # SET BIT14 TO SHOW MARK END
011290,000657: 07,2634 71307 MASK MARKSTAT
011291,000658: 07,2635 64736 AD BIT14
011292,000659: 07,2636 55307 TS MARKSTAT
011293,000660:
011294,000661: 07,2637 31235 SURFAGAN CA CURSOR
011295,000662: 07,2640 51552 INDEX MKDEX # HOLDS VAC AREA POINTER FOR SURF MARKING
011296,000663: 07,2641 54001 TS 1 # STORE CURSOR SP 2COMP
011297,000664: 07,2642 31236 CA SPIRAL
011298,000665: 07,2643 51552 INDEX MKDEX
011299,000666: 07,2644 54003 TS 3 # STORE SPIRAL
011300,000667:
011301,000668: 07,2645 41307 CS MARKSTAT # IF BIT 14 SET-END MARKING
011302,000669: 07,2646 74736 MASK BIT14
011303,000670: 07,2647 00006 EXTEND
011304,000671: 07,2650 12216 BZF MARKCHEX
011305,000672: 07,2651 31550 CA MARKCNTR # THIS IS RECYCLE-SEE IF 5 MARKS ALREADY
011306,000673: 07,2652 64753 AD ONE
011307,000674: 07,2653 40000 COM
011308,000675: 07,2654 64756 AD FIVE
011309,000676: 07,2655 00006 EXTEND
011310,000677: 07,2656 62446 BZMF 5MKALARM # CANT RECYCLE-TO MANY MARKS-ALARM
011311,000678: 07,2657 25550 INCR MARKCNTR # OF FOR RECYCLE-INCR COUNTER
011312,000679: 07,2660 12205 TCF GETMKS +3 # GO DISPLAY MARK VB
011313,000680:
End of include-file AOTMARK.agc. Parent file is MAIN.agc