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