Source Code

015386,000001: # Copyright: Public domain. 015387,000002: # Filename: IMU_PERFORMANCE_TEST_2.agc 015388,000003: # Purpose: A section of Luminary 1C, revision 131. 015389,000004: # It is part of the source code for the Lunar Module's (LM) 015390,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 015391,000006: # This file is intended to be a faithful transcription, except 015392,000007: # that the code format has been changed to conform to the 015393,000008: # requirements of the yaYUL assembler rather than the 015394,000009: # original YUL assembler. 015395,000010: # Reference: pp. 380-388 of 1729.pdf. 015396,000011: # Contact: Ron Burkey <info@sandroid.org>. 015397,000012: # Website: www.ibiblio.org/apollo/index.html 015398,000013: # Mod history: 05/11/03 RSB. Began transcribing. 015399,000014: # 05/14/05 RSB Corrected website reference above. 015400,000015: 015401,000016: # Page 380 015402,000017: # NAME -- IMU PERFORMANCE TESTS 2 015403,000018: 015404,000019: # DATE -- MARCH 20, 1967 015405,000020: 015406,000021: # BY -- SYSTEM TEST GROUP 864-6900 EXT. 1274 015407,000022: 015408,000023: # MODNO. -- ZERO 015409,000024: 015410,000025: # FUNCTIONAL DESCRIPTION 015411,000026: 015412,000027: # POSITIONING ROUTINES FOR THE IMU PERFORMANCE TESTS AS WELL AS SOME OF 015413,000028: # THE TESTS THEMSELVES. FOR A DESCRIPTION OF THESE SUBROUTINES AND THE 015414,000029: # OPERATING PROCEDURES (TYPICALLY) SEE STG MEMO 685. THEORETICAL REF. E-1973 015415,000030: 015416,000031: 33,2045 BANK 33 015417,000032: 37,2000 SETLOC IMU2 015418,000033: 37,2000 BANK 015419,000034: 37,2002 E5,1416 EBANK= POSITON 015420,000035: 37,2002 COUNT* $$/P07 015421,000036: 015422,000037: 37,2002 05311 REDO TC NEWMODEX 015423,000038: 37,2003 00007 MM 07 B-14 015424,000039: 015425,000040: 37,2004 02325 GEOIMUTT TC IMUZERR 015426,000041: 37,2005 34755 IMUBACK CA ZERO 015427,000042: 37,2006 55414 TS NDXCTR 015428,000043: 37,2007 55440 TS TORQNDX 015429,000044: 37,2010 55441 TS TORQNDX +1 015430,000045: 37,2011 55576 TS OVFLOWCK 015431,000046: 37,2012 34361 NBPOSPL CA DEC17 015432,000047: 37,2013 55571 TS ZERONDX 015433,000048: 37,2014 32476 CA XNBADR 015434,000049: 37,2015 02367 TC ZEROING 015435,000050: 37,2016 34736 CA HALF 015436,000051: 37,2017 55664 TS XNB 015437,000052: 37,2020 06042 GUESS TC INTPRET 015438,000053: 37,2021 62545 LATAZCHK DLOAD SL2 015439,000054: 37,2022 02403 LATITUDE 015440,000055: 37,2023 15046 STODL DSPTEM1 +1 015441,000056: 37,2024 02401 AZIMUTH 015442,000057: 37,2025 77434 RTB EXIT 015443,000058: 37,2026 21615 1STO2S 015444,000059: 37,2027 56154 XCH MPAC 015445,000060: 37,2030 55044 TS DSPTEM1 015446,000061: 37,2031 32473 CAF VN0641 015447,000062: 37,2032 04616 TC BANKCALL 015448,000063: 37,2033 20477 CADR GOFLASH 015449,000064: 37,2034 02270 TC ENDTEST1 015450,000065: 37,2035 02037 TC +2 015451,000066: 37,2036 02031 TC -5 015452,000067: # Page 381 015453,000068: 37,2037 06042 TC INTPRET 015454,000069: 37,2040 47135 SLOAD RTB 015455,000070: 37,2041 01045 DSPTEM1 015456,000071: 37,2042 21577 CDULOGIC 015457,000072: 37,2043 02401 STORE AZIMUTH 015458,000073: 37,2044 60535 SLOAD SR2 015459,000074: 37,2045 01046 DSPTEM1 +1 015460,000075: 37,2046 02403 STORE LATITUDE 015461,000076: 37,2047 57546 COS DCOMP 015462,000077: 37,2050 77752 SL1 015463,000078: 37,2051 16437 STODL WANGI 015464,000079: 37,2052 02403 LATITUDE 015465,000080: 37,2053 72556 SIN SL1 015466,000081: 37,2054 16435 STODL WANGO 015467,000082: 37,2055 02401 AZIMUTH 015468,000083: 37,2056 73406 PUSH SIN 015469,000084: 37,2057 02675 STORE YNB +2 015470,000085: 37,2060 16705 STODL ZNB +4 015471,000086: 37,2061 77746 COS 015472,000087: 37,2062 02677 STORE YNB +4 015473,000088: 37,2063 77676 DCOMP 015474,000089: 37,2064 36703 POSGMBL STCALL ZNB +2 015475,000090: 37,2065 47355 CALCGA 015476,000091: 37,2066 77776 EXIT 015477,000092: 37,2067 04616 TC BANKCALL 015478,000093: 37,2070 16771 CADR IMUCOARS 015479,000094: 37,2071 34736 CAF BIT14 # IF BIT14 SET, GIMBAL LOCK 015480,000095: 37,2072 70077 MASK FLAGWRD3 015481,000096: 37,2073 00006 EXTEND 015482,000097: 37,2074 12076 BZF +2 015483,000098: 37,2075 25414 INCR NDXCTR # +1 IF IN GIMBAL LOCK, OTHERWISE 0 015484,000099: 37,2076 05516 TC DOWNFLAG 015485,000100: 37,2077 00056 ADRES GLOKFAIL # RESET GIMBAL LOCK FLAG 015486,000101: 37,2100 02315 TC IMUSLLLG 015487,000102: 37,2101 11414 CCS NDXCTR # IF ONE GO AND DO A PIPA TEST ONLY 015488,000103: 37,2102 02126 TC PIPACHK # ALIGN AND MEASURE VERTICAL PIPA RATE 015489,000104: 37,2103 02320 TC FINIMUDD 015490,000105: 37,2104 00006 EXTEND 015491,000106: 37,2105 31575 DCA PERFDLAY 015492,000107: 37,2106 05277 TC LONGCALL # DELAY WHILE SUSPENSION STABILIZES 015493,000108: 37,2107 E5,1416 EBANK= POSITON 015494,000109: 37,2107 02113 76065 2CADR GOESTIMS 015495,000110: 015496,000111: 37,2111 32116 CA ESTICADR 015497,000112: 37,2112 05133 TC JOBSLEEP 015498,000113: 37,2113 32116 GOESTIMS CA ESTICADR 015499,000114: 37,2114 05137 TC JOBWAKE 015500,000115: 37,2115 05261 TC TASKOVER 015501,000116: 37,2116 76500 ESTICADR CADR ESTIMS 015502,000117: 37,2117 34755 TORQUE CA ZERO 015503,000118: # Page 382 015504,000119: 37,2120 55047 TS DSPTEM2 015505,000120: 37,2121 31504 CA DRIFTI 015506,000121: 37,2122 55050 TS DSPTEM2 +1 015507,000122: 37,2123 51416 INDEX POSITON 015508,000123: 37,2124 55420 TS SOUTHDR -1 015509,000124: 37,2125 02457 TC SHOW 015510,000125: 015511,000126: 37,2126 51414 PIPACHK INDEX NDXCTR # PIPA TEST 015512,000127: 37,2127 02130 TC +1 015513,000128: 37,2130 02447 TC EARTHR* 015514,000129: 37,2131 34361 CA DEC17 # ALLOW PIP COUNTER TO OVERFLOW 17 TIMES 015515,000130: 37,2132 55476 TS DATAPL +4 # IN THE ALLOTTED TIME INTERVAL 015516,000131: 37,2133 32474 CA DEC58 015517,000132: 37,2134 55412 TS LENGTHOT 015518,000133: 37,2135 34753 CA ONE 015519,000134: 37,2136 55537 TS RESULTCT 015520,000135: 37,2137 34755 CA ZERO 015521,000136: 37,2140 51415 INDEX PIPINDEX 015522,000137: 37,2141 54037 TS PIPAX 015523,000138: 37,2142 55472 TS DATAPL 015524,000139: 37,2143 02332 TC CHECKG 015525,000140: 37,2144 00004 INHINT 015526,000141: 37,2145 34752 CAF TWO 015527,000142: 37,2146 05173 TC TWIDDLE 015528,000143: 37,2147 E5,1642 EBANK= XSM 015529,000144: 37,2147 02151 ADRES PIPATASK 015530,000145: 37,2150 05155 TC ENDOFJOB 015531,000146: 015532,000147: 37,2151 00006 PIPATASK EXTEND 015533,000148: 37,2152 27412 DIM LENGTHOT 015534,000149: 37,2153 31412 CA LENGTHOT 015535,000150: 37,2154 00006 EXTEND 015536,000151: 37,2155 62161 BZMF STARTPIP 015537,000152: 37,2156 34742 CAF BIT10 015538,000153: 37,2157 05173 TC TWIDDLE 015539,000154: 37,2160 E5,1642 EBANK= XSM 015540,000155: 37,2160 02151 ADRES PIPATASK 015541,000156: 37,2161 34736 STARTPIP CAF PRIO20 015542,000157: 37,2162 05105 TC FINDVAC 015543,000158: 37,2163 E5,1642 EBANK= XSM 015544,000159: 37,2163 02166 76065 2CADR PIPJOBB 015545,000160: 015546,000161: 37,2165 05261 TC TASKOVER 015547,000162: 015548,000163: 37,2166 51414 PIPJOBB INDEX NDXCTR 015549,000164: 37,2167 02170 TC +1 015550,000165: 37,2170 02447 TC EARTHR* 015551,000166: 37,2171 31412 CA LENGTHOT 015552,000167: # Page 383 015553,000168: 37,2172 00006 EXTEND 015554,000169: 37,2173 62175 BZMF +2 015555,000170: 37,2174 05155 TC ENDOFJOB 015556,000171: 015557,000172: 37,2175 34756 CA FIVE 015558,000173: 37,2176 55537 TS RESULTCT 015559,000174: 37,2177 02332 TC CHECKG 015560,000175: 37,2200 11473 CCS DATAPL +1 015561,000176: 37,2201 02205 TC +4 015562,000177: 37,2202 05675 TC CCSHOLE 015563,000178: 37,2203 41476 CS DATAPL +4 015564,000179: 37,2204 55476 TS DATAPL +4 015565,000180: 37,2205 00006 EXTEND 015566,000181: 37,2206 41473 DCS DATAPL 015567,000182: 37,2207 21477 DAS DATAPL +4 015568,000183: 015569,000184: 37,2210 06042 TC INTPRET 015570,000185: 37,2211 45345 DLOAD DSU 015571,000186: 37,2212 02501 DATAPL +6 015572,000187: 37,2213 02475 DATAPL +2 015573,000188: 37,2214 45044 BPL CALL 015574,000189: 37,2215 76217 AINGOTN 015575,000190: 37,2216 76275 OVERFFIX 015576,000191: 37,2217 56325 AINGOTN PDDL DDV 015577,000192: 37,2220 02477 DATAPL +4 015578,000193: 37,2221 47075 DMPR RTB 015579,000194: 37,2222 37056 DEC585 # DEC585 HAS BEEN REDEVINED FOR LEM 015580,000195: 37,2223 21613 SGNAGREE 015581,000196: 37,2224 01050 STORE DSPTEM2 015582,000197: 37,2225 77776 EXIT 015583,000198: 37,2226 11414 CCS NDXCTR 015584,000199: 37,2227 02301 TC COAALIGN # TAKE PLATFORM OUT OF GIMBAL LOCK 015585,000200: 37,2230 02457 TC SHOW 015586,000201: 37,2231 32471 VERTDRFT CA 3990DEC # ABOUT 1 HOUR VERTICAL DRIFT TEST 015587,000202: 37,2232 55412 TS LENGTHOT 015588,000203: 37,2233 51416 INDEX POSITON 015589,000204: 37,2234 41417 CS SOUTHDR -2 015590,000205: 37,2235 55442 TS DRIFTT 015591,000206: 37,2236 11415 CCS PIPINDEX # OFFSET PLATFORM TO MIS PIP DEAD-ZONES 015592,000207: 37,2237 12245 TCF PON4 # Z-UP IN POS 4 015593,000208: 37,2240 44747 PON2 CS BIT5 # X-UP 015594,000209: 37,2241 27565 ADS ERCOMP +2 015595,000210: 37,2242 34747 CA BIT5 015596,000211: 37,2243 27567 ADS ERCOMP +4 015597,000212: 37,2244 12251 TCF PON 015598,000213: 37,2245 44747 PON4 CS BIT5 015599,000214: 37,2246 27565 ADS ERCOMP +2 015600,000215: 37,2247 34747 CA BIT5 015601,000216: 37,2250 27563 ADS ERCOMP 015602,000217: 37,2251 02447 PON TC EARTHR* 015603,000218: # Page 384 015604,000219: 37,2252 34755 CA ZERO # ALLOW ONLY SOUTH GYRO EARTH RATE COMPENS 015605,000220: 37,2253 55404 TS ERVECTOR 015606,000221: 37,2254 55405 TS ERVECTOR +1 015607,000222: 37,2255 34733 GUESS1 CAF POSMAX 015608,000223: 37,2256 55440 TS TORQNDX 015609,000224: 37,2257 55441 TS TORQNDX +1 015610,000225: 37,2260 30032 CA CDUX 015611,000226: 37,2261 55413 TS LOSVEC 015612,000227: 37,2262 02500 TC ESTIMS 015613,000228: 37,2263 31502 VALMIS CA DRIFTO 015614,000229: 37,2264 55050 TS DSPTEM2 +1 015615,000230: 37,2265 34755 CA ZERO 015616,000231: 37,2266 55047 TS DSPTEM2 015617,000232: 37,2267 02457 TC SHOW 015618,000233: 015619,000234: 37,2270 05516 ENDTEST1 TC DOWNFLAG 015620,000235: 37,2271 00007 ADRES IMUSE 015621,000236: 37,2272 44755 CS ZERO 015622,000237: 37,2273 05314 TC NEWMODEA 015623,000238: 37,2274 05472 TC ENDEXT 015624,000239: 015625,000240: # Page 385 015626,000241: 37,2275 43215 OVERFFIX DAD DAD 015627,000242: 37,2276 06532 DPPOSMAX 015628,000243: 37,2277 37064 ONEDPP 015629,000244: 37,2300 77616 RVQ 015630,000245: 015631,000246: 37,2301 00006 COAALIGN EXTEND # COARSE ALIGN SUBROUTINE 015632,000247: 37,2302 23571 QXCH ZERONDX 015633,000248: 37,2303 34755 CA ZERO 015634,000249: 37,2304 54321 TS THETAD 015635,000250: 37,2305 54322 TS THETAD +1 015636,000251: 37,2306 54323 TS THETAD +2 015637,000252: 37,2307 04616 TC BANKCALL 015638,000253: 37,2310 16771 CADR IMUCOARS 015639,000254: 37,2311 04616 ALIGNCOA TC BANKCALL 015640,000255: 37,2312 17707 CADR IMUSTALL 015641,000256: 37,2313 03047 TC SOMERR2 015642,000257: 37,2314 01571 TC ZERONDX 015643,000258: 015644,000259: 37,2315 00006 IMUSLLLG EXTEND 015645,000260: 37,2316 23571 QXCH ZERONDX 015646,000261: 37,2317 02311 TC ALIGNCOA 015647,000262: 015648,000263: 37,2320 00006 FINIMUDD EXTEND 015649,000264: 37,2321 23571 QXCH ZERONDX 015650,000265: 37,2322 04616 TC BANKCALL 015651,000266: 37,2323 17201 CADR IMUFINE 015652,000267: 37,2324 02311 TC ALIGNCOA 015653,000268: 015654,000269: 37,2325 00006 IMUZERR EXTEND 015655,000270: 37,2326 23571 QXCH ZERONDX 015656,000271: 37,2327 04616 TC BANKCALL 015657,000272: 37,2330 16705 CADR IMUZERO 015658,000273: 37,2331 02311 TC ALIGNCOA 015659,000274: 015660,000275: 37,2332 00006 CHECKG EXTEND # PIP PULSE CATCHING ROUTINE 015661,000276: 37,2333 23417 QXCH QPLACE 015662,000277: 37,2334 02342 TC +6 015663,000278: 37,2335 00003 CHECKG1 RELINT 015664,000279: 37,2336 30067 CA NEWJOB 015665,000280: 37,2337 00006 EXTEND 015666,000281: 37,2340 62346 BZMF +6 015667,000282: 37,2341 05122 TC CHANG1 015668,000283: 37,2342 00004 INHINT 015669,000284: 37,2343 51415 INDEX PIPINDEX 015670,000285: 37,2344 40037 CS PIPAX 015671,000286: 37,2345 55571 TS ZERONDX 015672,000287: 37,2346 00004 INHINT 015673,000288: # Page 386 015674,000289: 37,2347 51415 INDEX PIPINDEX 015675,000290: 37,2350 30037 CA PIPAX 015676,000291: 37,2351 61571 AD ZERONDX 015677,000292: 37,2352 00006 EXTEND 015678,000293: 37,2353 12335 BZF CHECKG1 015679,000294: 37,2354 51415 INDEX PIPINDEX 015680,000295: 37,2355 30037 CA PIPAX 015681,000296: 37,2356 51537 INDEX RESULTCT 015682,000297: 37,2357 55472 TS DATAPL 015683,000298: 37,2360 04102 TC FINETIME 015684,000299: 37,2361 51537 INDEX RESULTCT 015685,000300: 37,2362 55473 TS DATAPL +1 015686,000301: 37,2363 51537 INDEX RESULTCT 015687,000302: 37,2364 23474 LXCH DATAPL +2 015688,000303: 37,2365 00003 RELINT 015689,000304: 37,2366 01417 ENDCHKG TC QPLACE 015690,000305: 015691,000306: 37,2367 54001 ZEROING TS L 015692,000307: 37,2370 12372 TCF +2 015693,000308: 37,2371 55571 ZEROING1 TS ZERONDX 015694,000309: 37,2372 34755 CAF ZERO 015695,000310: 37,2373 50001 INDEX L 015696,000311: 37,2374 54000 TS 0 015697,000312: 37,2375 24001 INCR L 015698,000313: 37,2376 11571 CCS ZERONDX 015699,000314: 37,2377 12371 TCF ZEROING1 015700,000315: 37,2400 00002 TC Q 015701,000316: 015702,000317: # Page 387 015703,000318: 37,2401 65345 ERTHRVSE DLOAD PDDL 015704,000319: 37,2402 37057 SCHZEROS # PD24 = (SIN (missing) -COS (missing) 0)(OMEG/MS) 015705,000320: 37,2403 02403 LATITUDE 015706,000321: 37,2404 57546 COS DCOMP 015707,000322: 37,2405 73525 PDDL SIN 015708,000323: 37,2406 02403 LATITUDE 015709,000324: 37,2407 74266 VDEF VXSC 015710,000325: 37,2410 36001 OMEG/MS 015711,000326: 37,2411 02405 STORE ERVECTOR 015712,000327: 37,2412 77634 RTB 015713,000328: 37,2413 21574 LOADTIME 015714,000329: 37,2414 26433 STOVL TMARK 015715,000330: 37,2415 37057 SCHZEROS 015716,000331: 37,2416 02564 STORE ERCOMP 015717,000332: 37,2417 77616 RVQ 015718,000333: 015719,000334: 37,2420 47020 EARTHR ITA RTB 015720,000335: 37,2421 00051 S2 015721,000336: 37,2422 21574 LOADTIME 015722,000337: 37,2423 02431 STORE TEMPTIME 015723,000338: 37,2424 51025 DSU BPL 015724,000339: 37,2425 02433 TMARK 015725,000340: 37,2426 76431 ERTHR 015726,000341: 37,2427 77624 CALL 015727,000342: 37,2430 76275 OVERFFIX 015728,000343: 37,2431 74261 ERTHR SL VXSC 015729,000344: 37,2432 20212 9D 015730,000345: 37,2433 02405 ERVECTOR 015731,000346: 37,2434 53321 MXV VAD 015732,000347: 37,2435 02643 XSM 015733,000348: 37,2436 02564 ERCOMP 015734,000349: 37,2437 16564 STODL ERCOMP 015735,000350: 37,2440 02431 TEMPTIME 015736,000351: 37,2441 02433 STORE TMARK 015737,000352: 37,2442 47170 AXT,1 RTB 015738,000353: 37,2443 02563 ECADR ERCOMP 015739,000354: 37,2444 21706 PULSEIMU 015740,000355: 37,2445 77650 GOTO 015741,000356: 37,2446 00051 S2 015742,000357: 015743,000358: 37,2447 00006 EARTHR* EXTEND 015744,000359: 37,2450 23420 QXCH QPLACES 015745,000360: 37,2451 06042 TC INTPRET 015746,000361: 37,2452 77624 CALL 015747,000362: 37,2453 76420 EARTHR 015748,000363: 37,2454 77776 EXIT 015749,000364: 37,2455 02315 TC IMUSLLLG 015750,000365: 37,2456 01420 TC QPLACES 015751,000366: 015752,000367: 37,2457 00006 SHOW EXTEND 015753,000368: # Page 388 015754,000369: 37,2460 23417 QXCH QPLACE 015755,000370: 37,2461 31416 SHOW1 CA POSITON 015756,000371: 37,2462 55051 TS DSPTEM2 +2 015757,000372: 37,2463 32472 CA VB06N98 015758,000373: 37,2464 04616 TC BANKCALL 015759,000374: 37,2465 20477 CADR GOFLASH 015760,000375: 37,2466 02270 TC ENDTEST1 # V34 015761,000376: 37,2467 01417 TC QPLACE # V33 015762,000377: 37,2470 12461 TCF SHOW1 015763,000378: 015764,000379: 37,2471 07626 3990DEC DEC 3990 B-14 015765,000380: 37,2472 01542 VB06N98 VN 0698 015766,000381: 37,2473 01451 VN0641 VN 0641 015767,000382: 37,2474 4361 DEC17 = ND1 015768,000383: 37,2474 00072 DEC58 DEC 58 B-14 015769,000384: 37,2475 02737 OGCPL ECADR OGC 015770,000385: 37,2476 4777 1SECX = 1SEC 015771,000386: 37,2476 01664 XNBADR GENADR XNB 015772,000387: 37,2477 01642 XSMADR GENADR XSM 015773,000388: 015774,000389: 4102 BLOCK 2 015775,000390: 4102 COUNT* $$/P07 015776,000391: 4102 00004 FINETIME INHINT # RETURNS WITH INTERRUPT INHIBITED 015777,000392: 4103 00006 EXTEND 015778,000393: 4104 00004 READ LOSCALAR 015779,000394: 4105 54001 TS L 015780,000395: 4106 00006 EXTEND 015781,000396: 4107 06004 RXOR LOSCALAR 015782,000397: 4110 00006 EXTEND 015783,000398: 4111 14115 BZF +4 015784,000399: 4112 00006 EXTEND 015785,000400: 4113 00004 READ LOSCALAR 015786,000401: 4114 54001 TS L 015787,000402: 4115 44733 CS POSMAX 015788,000403: 4116 60001 AD L 015789,000404: 4117 00006 EXTEND 015790,000405: 4120 14103 BZF FINETIME +1 015791,000406: 4121 00006 EXTEND 015792,000407: 4122 00003 READ HISCALAR 015793,000408: 4123 00002 TC Q 015794,000409: End of include-file IMU_PERFORMANCE_TEST_2.agc. Parent file is MAIN.agc