Source Code

015796,000001: # Copyright: Public domain. 015797,000002: # Filename: IMU_PERFORMANCE_TESTS.agc 015798,000003: # Purpose: A section of Luminary 1C, revision 131. 015799,000004: # It is part of the source code for the Lunar Module's (LM) 015800,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 015801,000006: # This file is intended to be a faithful transcription, except 015802,000007: # that the code format has been changed to conform to the 015803,000008: # requirements of the yaYUL assembler rather than the 015804,000009: # original YUL assembler. 015805,000010: # Reference: pp. 389-396 of 1729.pdf. 015806,000011: # Contact: Ron Burkey <info@sandroid.org>. 015807,000012: # Website: www.ibiblio.org/apollo/index.html 015808,000013: # Mod history: 05/11/03 RSB. Began transcribing. 015809,000014: # 05/14/05 RSB. Corrected website reference above. 015810,000015: 015811,000016: # Page 389 015812,000017: # PROGRAM -- IMU PERFORMANCE TESTS 4 015813,000018: # DATA -- NOV 15, 1966 015814,000019: # BY -- GEORGE SCHMIDT IL7-146 EXT 1126 015815,000020: # MCD NO-ZERO 015816,000021: 015817,000022: # FUNCITONAL DESCRIPTION 015818,000023: 015819,000024: # THIS SECTION CONSISTSOF THE FILTER FOR THE GYRO DRIFT TESTS. NO COMPASS 015820,000025: # IS DONE IN LEM. FOR A DESCRIPTION OF THE FILTER SEE E-1973. THIS 015821,000026: # SECTION IS ENTERED FROM IMU 2. IT RETURNS THERE AT END OF TEST. 015822,000027: 015823,000028: # EARTHR,OGC ZERO,ERTHRVSE 015824,000029: 015825,000030: # NORMAL EXIT 015826,000031: 015827,000032: # LENGTHOT GOES TO ZERO -- RETURN TO IMU PERF TESTS 2 CONTROL 015828,000033: 015829,000034: # ALARMS 015830,000035: 015831,000036: # 1600 OVERFLOW IN DRIFT TEST 015832,000037: # 1601 BAD IMU MODING IN ANY ROUTINE THAT USES IMUSTALL 015833,000038: # OUTPUT 015834,000039: 015835,000040: # FLASHING DISPLAY OF RESULTS -- CONTROLLED IN IMU PERF TESTS 2 015836,000041: 015837,000042: # DEBRIS 015838,000043: 015839,000044: # ALL CENTRALS -- ALL OF EBANK XSM 015840,000045: 015841,000046: # Page 390 015842,000047: 33,2045 BANK 33 015843,000048: 37,2000 SETLOC IMU4 015844,000049: 37,2000 BANK 015845,000050: 37,2500 COUNT* $$/P07 015846,000051: 015847,000052: 37,2500 E5,1642 EBANK= XSM 015848,000053: 015849,000054: 37,2500 00004 ESTIMS INHINT 015850,000055: 37,2501 31572 CAE 1SECXT 015851,000056: 37,2502 05173 TC TWIDDLE 015852,000057: 37,2503 E5,1642 EBANK= XSM 015853,000058: 37,2503 02536 ADRES ALLOOP 015854,000059: 37,2504 34755 CAF ZERO # ZERO THE PIPAS 015855,000060: 37,2505 54037 TS PIPAX 015856,000061: 37,2506 54040 TS PIPAY 015857,000062: 37,2507 54041 TS PIPAZ 015858,000063: 37,2510 00003 RELINT 015859,000064: 37,2511 33075 CA 77DECML 015860,000065: 37,2512 55571 TS ZERONDX 015861,000066: 37,2513 33076 CA ALXXXZ 015862,000067: 37,2514 02367 TC ZEROING 015863,000068: 37,2515 06042 TC INTPRET 015864,000069: 37,2516 77735 SLOAD 015865,000070: 37,2517 37057 SCHZEROS 015866,000071: 37,2520 25477 STOVL GCOMPSW -1 015867,000072: 37,2521 37070 INTVAL +2 015868,000073: 37,2522 26445 STOVL ALX1S 015869,000074: 37,2523 37057 SCHZEROS 015870,000075: 37,2524 00325 STORE DELVX 015871,000076: 37,2525 01472 STORE GCOMP 015872,000077: 37,2526 77735 SLOAD 015873,000078: 37,2527 02441 TORQNDX 015874,000079: 37,2530 50076 DCOMP BMN 015875,000080: 37,2531 76534 VERTSKIP 015876,000081: 37,2532 77624 CALL 015877,000082: 37,2533 76401 ERTHRVSE 015878,000083: 37,2534 77776 VERTSKIP EXIT 015879,000084: 37,2535 03035 TC SLEEPIE +1 015880,000085: 015881,000086: # Page 391 015882,000087: 37,2536 31576 ALLOOP CA OVFLOWCK 015883,000088: 37,2537 00006 EXTEND 015884,000089: 37,2540 12542 BZF +2 015885,000090: 37,2541 05261 TC TASKOVER 015886,000091: 37,2542 11530 CCS ALTIM 015887,000092: 37,2543 30000 CA A # SHOULD NEVER HIT THIS LOCATION 015888,000093: 37,2544 55531 TS ALTIMS 015889,000094: 37,2545 40000 CS A 015890,000095: 37,2546 55530 TS ALTIM 015891,000096: 37,2547 44753 CS ONE 015892,000097: 37,2550 61562 AD GEOCOMPS 015893,000098: 37,2551 00006 EXTEND 015894,000099: 37,2552 12556 BZF +4 015895,000100: 37,2553 31412 CA LENGTHOT 015896,000101: 37,2554 00006 EXTEND 015897,000102: 37,2555 62562 BZMF +5 015898,000103: 37,2556 31572 CAE 1SECXT 015899,000104: 37,2557 05173 TC TWIDDLE 015900,000105: 37,2560 E5,1642 EBANK= XSM 015901,000106: 37,2560 02536 ADRES ALLOOP 015902,000107: 37,2561 34755 CAF ZERO 015903,000108: 37,2562 56037 XCH PIPAX 015904,000109: 37,2563 54324 TS DELVX 015905,000110: 37,2564 34755 CAF ZERO 015906,000111: 37,2565 56040 XCH PIPAY 015907,000112: 37,2566 54326 TS DELVY 015908,000113: 37,2567 34755 CAF ZERO 015909,000114: 37,2570 56041 XCH PIPAZ 015910,000115: 37,2571 54330 TS DELVZ 015911,000116: 37,2572 34736 SPECSTS CAF PRIO20 015912,000117: 37,2573 05105 TC FINDVAC 015913,000118: 37,2574 E5,1642 EBANK= XSM 015914,000119: 37,2574 02577 76065 2CADR ALFLT # START THE JOB 015915,000120: 015916,000121: 37,2576 05261 TC TASKOVER 015917,000122: 015918,000123: # Page 392 015919,000124: 37,2577 11562 ALFLT CCS GEOCOMPS 015920,000125: 37,2600 02602 TC +2 015921,000126: 37,2601 02604 TC NORMLOP 015922,000127: 37,2602 04616 TC BANKCALL 015923,000128: 37,2603 15271 CADR 1/PIPA 015924,000129: 37,2604 06042 NORMLOP TC INTPRET 015925,000130: 37,2605 77745 DLOAD 015926,000131: 37,2606 37066 INTVAL 015927,000132: 37,2607 24051 STOVL S1 015928,000133: 37,2610 00325 DELVX 015929,000134: 37,2611 76505 VXM VSL1 015930,000135: 37,2612 02643 XSM 015931,000136: 37,2613 57545 DLOAD DCOMP 015932,000137: 37,2614 00160 MPAC +3 015933,000138: 37,2615 16523 STODL DPIPAY 015934,000139: 37,2616 00162 MPAC +5 015935,000140: 37,2617 02527 STORE DPIPAZ 015936,000141: 015937,000142: 37,2620 76001 SETPD AXT,1 015938,000143: 37,2621 00001 0 015939,000144: 37,2622 00010 8D 015940,000145: 37,2623 57535 SLOAD DCOMP 015941,000146: 37,2624 02563 GEOCOMPS 015942,000147: 37,2625 77640 BMN 015943,000148: 37,2626 76772 PERFERAS 015944,000149: 37,2627 50135 ALCGKK SLOAD BMN 015945,000150: 37,2630 02532 ALTIMS 015946,000151: 37,2631 76644 ALFLT3 015947,000152: 37,2632 72174 ALKCG AXT,2 LXA,1 # LOADS SLOPES AND TIME CONSTANTS AT RQST 015948,000153: 37,2633 00014 12D 015949,000154: 37,2634 02444 ALX1S 015950,000155: 37,2635 62143 ALKCG2 DLOAD* INCR,1 015951,000156: 37,2636 02243 ALFDK +144D,1 015952,000157: 37,2637 77775 DEC -2 B-14 015953,000158: 37,2640 12545 STORE ALDK +10D,2 015954,000159: 37,2641 66104 TIX,2 SXA,1 015955,000160: 37,2642 76635 ALKCG2 015956,000161: 37,2643 02444 ALX1S 015957,000162: 015958,000163: 37,2644 77770 ALFLT3 AXT,1 015959,000164: 37,2645 00010 8D 015960,000165: 37,2646 41343 DELMLP DLOAD* DMP 015961,000166: 37,2647 02533 DPIPAY +8D,1 015962,000167: 37,2650 37100 PIPASC 015963,000168: 37,2651 43661 SLR BDSU* 015964,000169: 37,2652 21212 9D 015965,000170: 37,2653 02501 INTY +8D,1 015966,000171: 37,2654 06501 STORE INTY +8D,1 015967,000172: 37,2655 40725 PDDL DMP* 015968,000173: 37,2656 37102 VELSC 015969,000174: # Page 393 015970,000175: 37,2657 02521 VLAUN +8D,1 015971,000176: 37,2660 77732 SL2R 015972,000177: 37,2661 45425 DSU STADR 015973,000178: 37,2662 71216 STORE DELM +8D,1 015974,000179: 37,2663 06563 STORE DELM +10D,1 015975,000180: 37,2664 77100 TIX,1 AXT,2 015976,000181: 37,2665 76646 DELMLP 015977,000182: 37,2666 00004 4 015978,000183: 37,2667 56743 ALILP DLOAD* DMPR* 015979,000184: 37,2670 75324 ALK +4,2 015980,000185: 37,2671 75240 ALDK +4,2 015981,000186: 37,2672 12453 STORE ALK +4,2 015982,000187: 37,2673 77104 TIX,2 AXT,2 015983,000188: 37,2674 76667 ALILP 015984,000189: 37,2675 00010 8D 015985,000190: 37,2676 66140 ALKLP LXC,1 SXA,1 015986,000191: 37,2677 02445 CMPX1 015987,000192: 37,2700 02445 CMPX1 015988,000193: 37,2701 56743 DLOAD* DMPR* 015989,000194: 37,2702 02450 ALK +1,1 015990,000195: 37,2703 75216 DELM +8D,2 015991,000196: 37,2704 77613 DAD* 015992,000197: 37,2705 75276 INTY +8D,2 015993,000198: 37,2706 12501 STORE INTY +8D,2 015994,000199: 37,2707 42743 DLOAD* DAD* 015995,000200: 37,2710 75314 ALK +12D,2 015996,000201: 37,2711 75230 ALDK +12D,2 015997,000202: 37,2712 12463 STORE ALK +12D,2 015998,000203: 37,2713 42673 DMPR* DAD* 015999,000204: 37,2714 75216 DELM +8D,2 016000,000205: 37,2715 75266 INTY +16D,2 016001,000206: 37,2716 12511 STORE INTY +16D,2 016002,000207: 37,2717 40743 DLOAD* DMP* 016003,000208: 37,2720 37105 ALSK +1,1 016004,000209: 37,2721 75216 DELM +8D,2 016005,000210: 37,2722 42772 SL1R DAD* 016006,000211: 37,2723 75256 VLAUN +8D,2 016007,000212: 37,2724 12521 STORE VLAUN +8D,2 016008,000213: 37,2725 76104 TIX,2 AXT,1 016009,000214: 37,2726 76676 ALKLP 016010,000215: 37,2727 00010 8D 016011,000216: 016012,000217: 37,2730 64743 LOOSE DLOAD* PDDL* 016013,000218: 37,2731 02523 ACCWD +8D,1 016014,000219: 37,2732 02521 VLAUN +8D,1 016015,000220: 37,2733 55523 PDDL* VDEF 016016,000221: 37,2734 02531 POSNV +8D,1 016017,000222: 37,2735 76521 MXV VSL1 016018,000223: 37,2736 02001 TRANSM1 016019,000224: # Page 394 016020,000225: 37,2737 77745 DLOAD 016021,000226: 37,2740 00155 MPAC 016022,000227: 37,2741 06531 STORE POSNV +8D,1 016023,000228: 37,2742 77745 DLOAD 016024,000229: 37,2743 00160 MPAC +3 016025,000230: 37,2744 06521 STORE VLAUN +8D,1 016026,000231: 37,2745 77745 DLOAD 016027,000232: 37,2746 00162 MPAC +5 016028,000233: 37,2747 06523 STORE ACCWD +8D,1 016029,000234: 37,2750 77700 TIX,1 016030,000235: 37,2751 76730 LOOSE 016031,000236: 016032,000237: 37,2752 76174 AXT,2 AXT,1 # EVALUATE SINES AND COSINES 016033,000238: 37,2753 00006 6 016034,000239: 37,2754 00002 2 016035,000240: 37,2755 57343 BOOP DLOAD* DMPR 016036,000241: 37,2756 02503 ANGX +2,1 016037,000242: 37,2757 37110 GEORGEJ 016038,000243: 37,2760 77722 SR2R 016039,000244: 37,2761 73406 PUSH SIN 016040,000245: 37,2762 56072 SL3R XAD,1 016041,000246: 37,2763 00046 X1 016042,000247: 37,2764 10021 STORE 16D,2 016043,000248: 37,2765 77745 DLOAD 016044,000249: 37,2766 77746 COS 016045,000250: 37,2767 10027 STORE 22D,2 # COSINES 016046,000251: 37,2770 77704 TIX,2 016047,000252: 37,2771 76755 BOOP 016048,000253: 016049,000254: 37,2772 77776 PERFERAS EXIT 016050,000255: 37,2773 35016 CA EBANK7 016051,000256: 37,2774 54003 TS EBANK 016052,000257: 37,2775 E7,1400 EBANK= ATIGINC 016053,000258: 37,2775 01400 TC ATIGINC # GOTO ERASABLE TO CALCULATE (garbled) TO RETN 016054,000259: 016055,000260: # CAUTION 016056,000261: 016057,000262: # THE ERASABLE PROGRAM THAT DOES THE CALCULATIONS MUST BE LOADED 016058,000263: # BEFORE ANY ATTEMPT IS MAKE TO RUN THE IMU PERFORMANCE TEST 016059,000264: 016060,000265: 37,2776 E5,1400 EBANK= AZIMUTH 016061,000266: 37,2776 11412 CCS LENGTHOT 016062,000267: 37,2777 03034 TC SLEEPIE 016063,000268: 37,3000 11440 CCS TORQNDX 016064,000269: 37,3001 13003 TCF +2 016065,000270: 37,3002 03005 TC SETUPER1 016066,000271: 37,3003 30032 CA CDUX 016067,000272: 37,3004 55414 TS LOSVEC +1 # FOR TROUBLESHOOTING VD POSNS 2. 016068,000273: 016069,000274: # Page 395 016070,000275: 37,3005 06042 SETUPER1 TC INTPRET 016071,000276: 37,3006 65345 DLOAD PDDL # ANGLES FROM DRIFT TEST ONLY 016072,000277: 37,3007 02473 ANGZ 016073,000278: 37,3010 02477 ANGY 016074,000279: 37,3011 55525 PDDL VDEF 016075,000280: 37,3012 02501 ANGX 016076,000281: 37,3013 74276 VCOMP VXSC 016077,000282: 37,3014 37110 GEORGEJ 016078,000283: 37,3015 74521 MXV VSR1 016079,000284: 37,3016 02643 XSM 016080,000285: 37,3017 02740 STORE OGC 016081,000286: 37,3020 77776 EXIT 016082,000287: 016083,000288: 37,3021 32475 CA OGCPL 016084,000289: 37,3022 04616 TC BANKCALL 016085,000290: 37,3023 17314 CADR IMUPULSE 016086,000291: 37,3024 02315 TC IMUSLLLG 016087,000292: 37,3025 11440 GEOSTRT4 CCS TORQNDX # ONLY POSITIVE IF IN VERTICAL DRIFT TEST 016088,000293: 37,3026 02263 TC VALMIS 016089,000294: 37,3027 06042 TC INTPRET 016090,000295: 37,3030 77624 CALL 016091,000296: 37,3031 76401 ERTHRVSE 016092,000297: 37,3032 77776 EXIT 016093,000298: 37,3033 02117 TC TORQUE 016094,000299: 016095,000300: 37,3034 55412 SLEEPIE TS LENGTHOT # TEST NOT OVER-DECREMENT LENGTHOT 016096,000301: 37,3035 11440 CCS TORQNDX # ARE WE DOING VERTDRIFT 016097,000302: 37,3036 02447 TC EARTHR* 016098,000303: 37,3037 05155 TC ENDOFJOB 016099,000304: 016100,000305: 37,3040 35014 SOMEERRR CA EBANK5 016101,000306: 37,3041 54003 TS EBANK 016102,000307: 37,3042 34753 CA ONE 016103,000308: 37,3043 55576 TS OVFLOWCK # STOP ALLOOP FROM CALLING ITSELF 016104,000309: 37,3044 05567 TC ALARM 016105,000310: 37,3045 01600 OCT 1600 016106,000311: 37,3046 02270 TC ENDTEST1 016107,000312: 37,3047 33054 SOMERR2 CAF OCT1601 016108,000313: 37,3050 05734 TC VARALARM 016109,000314: 37,3051 05516 TC DOWNFLAG 016110,000315: 37,3052 00007 ADRES IMUSE 016111,000316: 37,3053 05155 TC ENDOFJOB 016112,000317: 016113,000318: 37,3054 01601 OCT1601 OCT 01601 016114,000319: 37,3055 06200 DEC585 OCT 06200 # 3200 B+14 ORDER IS IMPORTANT 016115,000320: 37,3056 00000 00000 SCHZEROS 2DEC .00000000 016116,000321: # Page 396 016117,000322: 37,3060 00000 00000 2DEC .00000000 016118,000323: 37,3062 00000 OCT 00000 016119,000324: 37,3063 00000 ONEDPP OCT 00000 # ORDER IS IMPORTANT 016120,000325: 37,3064 00001 OCT 00001 016121,000326: 016122,000327: 37,3065 00004 INTVAL OCT 4 016123,000328: 37,3066 00002 OCT 2 016124,000329: 37,3067 00220 DEC 144 B-14 016125,000330: 37,3070 77776 DEC -1 B-14 016126,000331: 37,3071 35730 00035 SOUPLY 2DEC .93505870 # INITIAL GAINS FOR PIP OUTPUTS 016127,000332: 37,3073 10317 17550 2DEC .26266423 # INITIAL GAINS/4 FOR ERECTION ANGLES 016128,000333: 016129,000334: 37,3075 00115 77DECML DEC 77 B-14 016130,000335: 37,3076 01443 ALXXXZ GENADR ALX1S -1 016131,000336: 37,3077 04133 02265 PIPASC 2DEC .13055869 016132,000337: 37,3101 57223 66451 VELSC 2DEC -.52223476 # 512/980.402 016133,000338: 37,3103 05427 12577 ALSK 2DEC .17329931 # SSWAY VEL GAIN X 980.402/4096 016134,000339: 37,3105 77567 44202 2DEC -.00835370 # SSWAY ACCEL GAIN X 980.402/4096 016135,000340: 016136,000341: 37,3107 24276 14066 GEORGEJ 2DEC .63661977 016137,000342: 37,3111 23073 11773 GEORGEK 2DEC .59737013 016138,000343: End of include-file IMU_PERFORMANCE_TESTS_4.agc. Parent file is MAIN.agc