Source Code

044647,000001: # Copyright: Public domain. 044648,000002: # Filename: JET_SELECTION_LOGIC.agc 044649,000003: # Purpose: Part of the source code for Colossus, build 249. 044650,000004: # It is part of the source code for the Command Module's (CM) 044651,000005: # Apollo Guidance Computer (AGC), possibly for Apollo 8 and 9. 044652,000006: # Assembler: yaYUL 044653,000007: # Reference: Starts on p. 1014 of 1701.pdf. 044654,000008: # Contact: Ron Burkey <info@sandroid.org>. 044655,000009: # Website: www.ibiblio.org/apollo. 044656,000010: # Mod history: 08/26/04 RSB. Began transcribing. 044657,000011: 044658,000012: # The contents of the "Colossus249" files, in general, are transcribed 044659,000013: # from a scanned document obtained from MIT's website, 044660,000014: # http://hrst.mit.edu/hrs/apollo/public/archive/1701.pdf. Notations on this 044661,000015: # document read, in part: 044662,000016: 044663,000017: # Assemble revision 249 of AGC program Colossus by NASA 044664,000018: # 2021111-041. October 28, 1968. 044665,000019: 044666,000020: # This AGC program shall also be referred to as 044667,000021: # Colossus 1A 044668,000022: 044669,000023: # Prepared by 044670,000024: # Massachusetts Institute of Technology 044671,000025: # 75 Cambridge Parkway 044672,000026: # Cambridge, Massachusetts 044673,000027: # under NASA contract NAS 9-4065. 044674,000028: 044675,000029: # Refer directly to the online document mentioned above for further information. 044676,000030: # Please report any errors (relative to 1701.pdf) to info@sandroid.org. 044677,000031: 044678,000032: # In some cases, where the source code for Luminary 131 overlaps that of 044679,000033: # Colossus 249, this code is instead copied from the corresponding Luminary 131 044680,000034: # source file, and then is proofed to incorporate any changes. 044681,000035: 044682,000036: # Page 1014 044683,000037: 21,3751 BANK 21 044684,000038: 17,2000 SETLOC DAPS4 044685,000039: 17,2000 BANK 044686,000040: 044687,000041: 17,2577 COUNT 17/DAPJS 044688,000042: 044689,000043: 17,2577 E6,1510 EBANK= KMPAC 044690,000044: 044691,000045: # EXAMINE CHANNEL 31 FOR TRANSLATION COMMANDS 044692,000046: 044693,000047: 17,2577 22016 JETSLECT LXCH BANKRUPT 044694,000048: 17,2600 32661 CAF DELTATT3 # = 60 MS RESET TO EXECUTIVE PHASE1 044695,000049: 17,2601 61634 AD T5TIME 044696,000050: 17,2602 54030 TS TIME5 044697,000051: 17,2603 12606 TCF +3 044698,000052: 17,2604 32662 CAF DELATT20 # = 20 MS TO ASSURE A T5RUPT 044699,000053: 17,2605 54030 TS TIME5 044700,000054: 17,2606 33340 CAF =14MS # RESET T6 TO INITIALIZE THE JET CHANNELS 044701,000055: 17,2607 54031 TS TIME6 # IN 14 MS 044702,000056: 17,2610 34674 CAF NEGMAX 044703,000057: 17,2611 00006 EXTEND 044704,000058: 17,2612 05013 WOR CHAN13 044705,000059: 17,2613 00006 EXTEND 044706,000060: 17,2614 22012 QXCH QRUPT 044707,000061: 17,2615 32660 CAF XLNMASK # = 7700 OCT 044708,000062: 17,2616 00006 EXTEND # EXAMINE THE TRANSLATION 044709,000063: 17,2617 06031 RXOR CHAN31 # HAND CONTROLLER 044710,000064: 17,2620 72660 MASK XLNMASK 044711,000065: 17,2621 00006 EXTEND 044712,000066: 17,2622 12663 BZF NOXLNCMD 044713,000067: 17,2623 55502 TS T5TEMP 044714,000068: 17,2624 00006 EXTEND 044715,000069: 17,2625 74702 MP BIT9 044716,000070: 17,2626 76214 MASK THREE 044717,000071: 17,2627 55513 TS XNDX1 # AC QUAD X-TRANSLATION INDEX 044718,000072: 17,2630 55514 TS XNDX2 # BD QUAD X-TRANSLATION INDEX 044719,000073: 17,2631 31502 CA T5TEMP 044720,000074: 17,2632 00006 EXTEND # 1 = + XLN 044721,000075: 17,2633 74704 MP BIT7 # 2 = - XLN 044722,000076: 17,2634 76214 MASK THREE # 3 = NO XLN 044723,000077: 17,2635 55515 TS YNDX # Y-TRANSLATION INDEX 044724,000078: 044725,000079: 17,2636 31502 CA T5TEMP 044726,000080: 17,2637 00006 EXTEND 044727,000081: 17,2640 74706 MP BIT5 044728,000082: 17,2641 76214 MASK THREE 044729,000083: 17,2642 55516 TS ZNDX # Z-TRANSLATION INDEX 044730,000084: 044731,000085: 17,2643 31466 CA DAPDATR1 # SET ATTKALMN TO PICK UP FILTER GAINS FOR 044732,000086: 17,2644 74675 MASK BIT14 # TRANSLATIONS. 044733,000087: 17,2645 00006 EXTEND # CHECK DAPDATR1 BIT 14 FOR LEM ATTACHED. 044734,000088: # Page 1015 044735,000089: 17,2646 12651 BZF NOLEM 044736,000090: 17,2647 46214 CS THREE # IF LEM IS ON, SET ATTKALMN = -3 044737,000091: 17,2650 12652 TCF +2 044738,000092: 17,2651 44711 NOLEM CS TWO # IF LEM IS OFF, SET ATTKALMN = -2. 044739,000093: 17,2652 55617 TS ATTKALMN 044740,000094: 17,2653 11631 CCS XTRANS # (+, -1, 0) 044741,000095: 17,2654 55513 TS XNDX1 # USING BD-X ZERO XNDX1 044742,000096: 17,2655 12667 TCF PWORD 044743,000097: 17,2656 55514 TS XNDX2 # USING AC-X ZERO XNDX2 044744,000098: 17,2657 12667 TCF PWORD 044745,000099: 17,2660 07700 XLNMASK OCT 7700 044746,000100: 17,2661 37772 DELTATT3 DEC 16378 B-14 # = 60 MS 044747,000101: 17,2662 37776 DELATT20 DEC 16382 B-14 # = 20 MS 044748,000102: 044749,000103: 17,2663 55513 NOXLNCMD TS XNDX1 # ZERO ALL REQUESTS FOR TRANSLATION 044750,000104: 17,2664 55514 TS XNDX2 044751,000105: 17,2665 55515 TS YNDX 044752,000106: 17,2666 55516 TS ZNDX 044753,000107: 044754,000108: # PITCH COMMANDS TIMING(NO X-TRANS, NO QUAD FAILS) 32MCT 044755,000109: 044756,000110: 17,2667 11562 PWORD CCS TAU1 # CHECK FOR PITCH COMMANDS 044757,000111: 17,2670 34712 CAF ONE 044758,000112: 17,2671 12673 TCF +2 # 0 = NO PITCH 044759,000113: 17,2672 34711 CAF TWO # +1 = + PITCH 044760,000114: 17,2673 55520 TS PINDEX # +2 = - PITCH 044761,000115: 044762,000116: 17,2674 11626 CCS RACFAIL # FLAG FOR REAL AC QUAD FAILURES 044763,000117: 17,2675 12701 TCF AFAILP 044764,000118: 17,2676 12711 TCF TABPCOM # 0 = NO REAL AC FAILURES 044765,000119: 17,2677 12703 TCF CFAILP # + = A QUAD FAILED 044766,000120: 17,2700 12711 TCF TABPCOM # - = C QUAD FAILED 044767,000121: # IF FAILURES ARE PRESENT IGNORE 044768,000122: # X-TRANSLATIONS ON THIS AXIS 044769,000123: 044770,000124: 17,2701 34334 AFAILP CAF NINE # IF FAILURE IS PRESENT 1JET OPERATION 044771,000125: 17,2702 12713 TCF TABPCOM +2 # IS ASSUMED. IGNORE X-TRANSLATION 044772,000126: 17,2703 35656 CFAILP CAF TWELVE 044773,000127: 17,2704 12713 TCF TABPCOM +2 044774,000128: 044775,000129: 17,2705 00000 XLNNDX DEC 0 B-14 # INDICES FOR TRANSLATION COMMANDS 044776,000130: 17,2706 00003 DEC 3 B-14 # FOR USE IN TABLE LOOK UP 044777,000131: 17,2707 00006 DEC 6 B-14 044778,000132: 17,2710 00000 DEC 0 B-14 044779,000133: 044780,000134: 17,2711 5656 TWELVE = OCT14 044781,000135: 044782,000136: # TABLE LOOK UP FOR PITCH COMMANDS WITH AND WITHOUT X-TRANSLATION AND AC QUAD FAILURES PRESENT. 044783,000137: # BITS 9, 10 CONTAIN THE NUMBER OF PITCH JETS USED TO PERFORM THE PITCH ROTATION 044784,000138: # Page 1016 044785,000139: 044786,000140: 17,2711 51513 TABPCOM INDEX XNDX1 044787,000141: 17,2712 32705 CA XLNNDX 044788,000142: 17,2713 61520 AD PINDEX 044789,000143: 17,2714 50000 INDEX A 044790,000144: 17,2715 32741 CA PYTABLE 044791,000145: 17,2716 72760 MASK PJETS # =1417 OCT 044792,000146: 17,2717 55453 TS PWORD1 044793,000147: 17,2720 00006 EXTEND 044794,000148: 17,2721 74704 MP BIT7 044795,000149: 17,2722 55523 TS NPJETS # = NO. OF PITCH JETS 044796,000150: 044797,000151: # YAW JET COMMANDS TIMING(N X-TRANS, NO QUAD FAILURES) 32MCT 044798,000152: 044799,000153: 17,2723 11563 YWORD CCS TAU2 # CHECK FOR YAW COMMANDS 044800,000154: 17,2724 34712 CAF ONE 044801,000155: 17,2725 12727 TCF +2 044802,000156: 17,2726 34711 CAF TWO 044803,000157: 17,2727 55521 TS YINDEX # YAW ROTATION INDEX 044804,000158: 044805,000159: 17,2730 11627 CCS RBDFAIL # FLAG FOR B OR D QUAD FAILURES 044806,000160: 17,2731 12735 TCF BFAILY # 0 = NO BD FAILURE 044807,000161: 17,2732 12762 TCF TABYCOM # + - B QUAD FAILED 044808,000162: 17,2733 12737 TCF DFAILY # - = D QUAD FAILED 044809,000163: 17,2734 12762 TCF TABYCOM 044810,000164: 044811,000165: 17,2735 34334 BFAILY CAF NINE 044812,000166: 17,2736 12764 TCF TABYCOM +2 044813,000167: 17,2737 35656 DFAILY CAF TWELVE 044814,000168: 17,2740 12764 TCF TABYCOM +2 044815,000169: 044816,000170: # Page 1017 044817,000171: # TABLE FOR PITCH(YAW) COMMANDS 044818,000172: # BITS 4,3,2,1 = PITCH, X-TRANSLATION JETS SELECTED 044819,000173: # BITS 10,9 = NO. PITCH JETS USED TO PERFORM ROTATION 044820,000174: # BITS 8,7,6,5 = YAW, X-TRANSLATION JETS SELECTED 044821,000175: # BITS 12,11: NO. YAW JETS USED TO PERFORM ROTATION 044822,000176: 044823,000177: # ROT TRANS QUAD BIAS 044824,000178: 17,2741 00000 PYTABLE OCT 0 # 0 0 0 044825,000179: 17,2742 05125 OCT 5125 # + 0 0 044826,000180: 17,2743 05252 OCT 5252 # - 0 0 044827,000181: 17,2744 00231 OCT 0231 # 0 + 3 044828,000182: 17,2745 02421 OCT 2421 # + + 3 044829,000183: 17,2746 02610 OCT 2610 # - + 3 044830,000184: 17,2747 00146 OCT 0146 # 0 - 6 044831,000185: 17,2750 02504 OCT 2504 # + - 6 044832,000186: 17,2751 02442 OCT 2442 # - - 6 044833,000187: 17,2752 00000 OCT 0 # 0 A(B) 9 044834,000188: 17,2753 02421 OCT 2421 # + A(B) 9 044835,000189: 17,2754 02442 OCT 2442 # - A(B) 9 044836,000190: 17,2755 00000 OCT 0 # 0 C(D) 12 044837,000191: 17,2756 02504 OCT 2504 # + C(D) 12 044838,000192: 17,2757 02610 OCT 2610 # - C(D) 12 044839,000193: 044840,000194: # MASKS FOR PITCH AND YAW COMMANDS 044841,000195: 044842,000196: 17,2760 01417 PJETS OCT 1417 044843,000197: 17,2761 06360 YJETS OCT 6360 044844,000198: 044845,000199: # TABLE LOOK UP FOR YAW COMMANDS WTIH AND WITHOUT X-TRANSLATION AND AC QUAD FAILURES PRESENT 044846,000200: # BITS 11, 12 CONTAIN THE NUMBER OF YAW JETS USED TO PERFORM THE YAW ROTATION 044847,000201: 044848,000202: 17,2762 51514 TABYCOM INDEX XNDX2 044849,000203: 17,2763 32705 CA XLNNDX 044850,000204: 17,2764 61521 AD YINDEX 044851,000205: 17,2765 50000 INDEX A 044852,000206: 17,2766 32741 CA PYTABLE 044853,000207: 17,2767 72761 MASK YJETS # = 6360 OCT 044854,000208: 17,2770 55455 TS YWORD1 044855,000209: 17,2771 00006 EXTEND 044856,000210: 17,2772 74706 MP BIT5 044857,000211: 17,2773 55524 TS NYJETS # NO. OF YAW JETS USED TO PERFORM ROTATION 044858,000212: 044859,000213: # Page 1018 044860,000214: # ROLL COMMANDS TIMING(NO Y,Z TRANS, NO QUAD FAILS) 45MCT 044861,000215: 044862,000216: 17,2774 11561 RWORD CCS TAU # CHECK FOR ROLL COMMANDS 044863,000217: 17,2775 34712 CAF ONE 044864,000218: 17,2776 13000 TCF +2 044865,000219: 17,2777 34711 CAF TWO 044866,000220: 17,3000 55517 TS RINDEX 044867,000221: 044868,000222: 17,3001 11630 CCS ACORBD # FLAG FOR AC OR BD QUAD SELECTION FOR 044869,000223: 17,3002 13073 TCF BDROLL # ROLL COMMANDS 044870,000224: 17,3003 13073 TCF BDROLL # +, +0 = BD ROLL 044871,000225: 17,3004 13005 TCF +1 # -, -0 = AC ROLL 044872,000226: 044873,000227: 17,3005 11626 ACROLL CCS RACFAIL # CHECK FOR REAL FAILURES 044874,000228: 17,3006 13012 TCF RAFAIL # ON AC QUADS 044875,000229: 17,3007 13022 TCF RXLNS 044876,000230: 17,3010 13014 TCF RCFAIL 044877,000231: 17,3011 13022 TCF RXLNS 044878,000232: 044879,000233: 17,3012 34334 RAFAIL CAF NINE # QUAD FAILURE WILL GET 044880,000234: 17,3013 13024 TCF TABRCOM # 1-JET OPERATION 044881,000235: 17,3014 35656 RCFAIL CAF TWELVE 044882,000236: 17,3015 13024 TCF TABRCOM 044883,000237: 044884,000238: 17,3016 00000 XLN1NDX DEC 0 B-14 044885,000239: 17,3017 00001 DEC 1 B-14 # INDICES FOR TRANSLATION 044886,000240: 17,3020 00002 DEC 2 B-14 044887,000241: 17,3021 00000 DEC 0 B-14 044888,000242: 044889,000243: # TABLE LOOK UP FOR AC-ROLL COMMANDS WITH AND WITHOUT Y-TRANSLATION AND ACQUAD FAILURES PRESENT 044890,000244: # BITS 9,10,11 CONTAIN THE MAGNITUDE AND DIRECTION OF THE ROLL 044891,000245: 044892,000246: 17,3022 51515 RXLNS INDEX YNDX # NO AC QUAD FAILURES 044893,000247: 17,3023 32705 CA XLNNDX # INCLUDE +,-,0, Y-TRANSLATION 044894,000248: 17,3024 61517 TABRCOM AD RINDEX 044895,000249: 17,3025 50000 INDEX A 044896,000250: 17,3026 33155 CA RTABLE 044897,000251: 17,3027 73174 MASK ACRJETS # = 3760 OCT 044898,000252: 17,3030 55451 TS RWORD1 044899,000253: 044900,000254: # CHECK FOR Z-TRANSLATIONS ON BD 044901,000255: 044902,000256: 17,3031 31516 BDZCHECK CA ZNDX 044903,000257: 17,3032 00006 EXTEND 044904,000258: 17,3033 63065 BZMF NOBDZ # NO Z-TRANSLATION 044905,000259: 044906,000260: # Page 1019 044907,000261: # TABLE LOOK UP FOR BD Z-TRANSLATION WITH AND WITHOUT REAL BD QUAD FAILURES. Z-TRANSLATION WILL BE POSSIBLE 044908,000262: # AS LONG AS ROLL COMMANDS CAN BE SATISFIED WITH THE AC ROLL JETS. CRITERION: IF THE RESULTANT NET ROLL 044909,000263: # COMMANDS = 0 (WITH Z-TRANSLATION) AND IF TAU = 0, THEN INCLUDE THE BD Z-TRANSLATION COMMANDS. IF THE RESULTANT 044910,000264: # ROLL COMMAND = 0, AND IF TAU NZ, THEN IGNORE THE BD Z-TRANSLATION 044911,000265: 044912,000266: 17,3034 11627 CCS RBDFAIL 044913,000267: 17,3035 36214 CAF THREE 044914,000268: 17,3036 13040 TCF +2 044915,000269: 17,3037 36211 CAF SIX 044916,000270: 17,3040 51516 INDEX ZNDX 044917,000271: 17,3041 63016 AD XLN1NDX 044918,000272: 17,3042 50000 INDEX A 044919,000273: 17,3043 33176 CA YZTABLE 044920,000274: 17,3044 73207 MASK BDZJETS # = 3417 OCT 044921,000275: 17,3045 61451 AD RWORD1 # ADD TO ROLL COMMANDS 044922,000276: 17,3046 55502 TS T5TEMP # IF POSSIBLE. MUST CHECK TAU FIRST 044923,000277: 044924,000278: 17,3047 00006 EXTEND 044925,000279: 17,3050 74704 MP BIT7 # DETERMINE THE NET ROLL COMMAND WITH 044926,000280: 17,3051 66061 AD =-4 # Z-TRANSLATION ADDED ON 044927,000281: 17,3052 55522 TS NRJETS # NET NO. OF +,- ROLL JETS ON 044928,000282: 17,3053 00006 EXTEND 044929,000283: 17,3054 13060 BZF TAUCHECK 044930,000284: 044931,000285: 17,3055 31502 ACRBDZ CA T5TEMP # Z-TRANSLATION ACCEPTED EVEN THO WE MAY 044932,000286: 17,3056 55451 TS RWORD1 # HAVE INTRODUCED AND UNDESIREABLE ROLL 044933,000287: 17,3057 13321 TCF ROLLTIME # BRANCH TO JET ON-TIME CALCULATIONS 044934,000288: 044935,000289: 17,3060 11561 TAUCHECK CCS TAU 044936,000290: 17,3061 13065 TCF NOBDZ 044937,000291: 17,3062 13055 TCF ACRBDZ 044938,000292: 17,3063 13065 TCF NOBDZ 044939,000293: 17,3064 13055 TCF ACRBDZ 044940,000294: 044941,000295: 17,3065 31451 NOBDZ CA RWORD1 # Z-TRANSLATION NOT ACCEPTED 044942,000296: 17,3066 00006 EXTEND 044943,000297: 17,3067 74704 MP BIT7 044944,000298: 17,3070 67715 AD =-2 044945,000299: 17,3071 55522 TS NRJETS 044946,000300: 17,3072 13321 TCF ROLLTIME # BRANCH TO JET ON-TIME CALCULATION 044947,000301: 044948,000302: # Page 1020 044949,000303: # BD QUAD SELECTION FOR ROLL COMMANDS 044950,000304: 044951,000305: 17,3073 11627 BDROLL CCS RBDFAIL 044952,000306: 17,3074 13100 TCF RBFAIL 044953,000307: 17,3075 13104 TCF RZXLNS 044954,000308: 17,3076 13102 TCF RDFAIL 044955,000309: 17,3077 13104 TCF RZXLNS 044956,000310: 17,3100 34334 RBFAIL CAF NINE 044957,000311: 17,3101 13106 TCF TABRZCMD 044958,000312: 17,3102 35656 RDFAIL CAF TWELVE 044959,000313: 17,3103 13106 TCF TABRZCMD 044960,000314: 044961,000315: 17,3104 51516 RZXLNS INDEX ZNDX # NO BD FAILURES 044962,000316: 17,3105 32705 CA XLNNDX # +,-,0 Z-TRANSLATION PRESENT 044963,000317: 17,3106 61517 TABRZCMD AD RINDEX 044964,000318: 17,3107 50000 INDEX A 044965,000319: 17,3110 33155 CA RTABLE 044966,000320: 17,3111 73175 MASK BDRJETS # = 34017 OCT 044967,000321: 17,3112 55451 TS RWORD1 044968,000322: 044969,000323: 17,3113 31515 ACYCHECK CA YNDX # ANY Y-TRANSLATION 044970,000324: 17,3114 00006 EXTEND 044971,000325: 17,3115 13147 BZF NOACY # NO Y-TRANSLATION 044972,000326: 17,3116 11626 CCS RACFAIL 044973,000327: 17,3117 36214 CAF THREE 044974,000328: 17,3120 13122 TCF +2 044975,000329: 17,3121 36211 CAF SIX 044976,000330: 17,3122 51515 INDEX YNDX 044977,000331: 17,3123 63016 AD XLN1NDX 044978,000332: 17,3124 50000 INDEX A 044979,000333: 17,3125 33176 CA YZTABLE 044980,000334: 17,3126 73210 MASK ACYJETS # = 34360 OCT 044981,000335: 17,3127 61451 AD RWORD1 044982,000336: 17,3130 55502 TS T5TEMP 044983,000337: 17,3131 00006 EXTEND # FOR EXPLANATION SEE CODING ON RTABLE 044984,000338: 17,3132 74707 MP BIT4 044985,000339: 17,3133 66061 AD =-4 044986,000340: 17,3134 55522 TS NRJETS # NO. OF NET ROLL JETS 044987,000341: 17,3135 00006 EXTEND 044988,000342: 17,3136 13142 BZF TAUCHCK # IF NRJETS = 0 044989,000343: 044990,000344: 17,3137 31502 BDRACZ CA T5TEMP # Y-TRANSLATION ACCEPTED 044991,000345: 17,3140 55451 TS RWORD1 044992,000346: 17,3141 13321 TCF ROLLTIME # BRANCH TO JET ON-TIME CALCULATIONS 044993,000347: 044994,000348: 17,3142 11561 TAUCHCK CCS TAU 044995,000349: 17,3143 13147 TCF NOACY 044996,000350: 17,3144 13137 TCF BDRACZ 044997,000351: 17,3145 13147 TCF NOACY 044998,000352: 17,3146 13137 TCF BDRACZ 044999,000353: 045000,000354: # Page 1021 045001,000355: 17,3147 31451 NOACY CA RWORD1 # Y-TRANSLATION NOT ACCEPTED 045002,000356: 17,3150 00006 EXTEND 045003,000357: 17,3151 74707 MP BIT4 045004,000358: 17,3152 67715 AD =-2 045005,000359: 17,3153 55522 TS NRJETS 045006,000360: 17,3154 13321 TCF ROLLTIME 045007,000361: 045008,000362: # Page 1022 045009,000363: # TABLE FOR ROLL, Y AND Z-TRANSLATION COMMANDS 045010,000364: 045011,000365: # EITHER AC OR BD ROLL MAY BE SELECTED. IF AC ROLL IS SELECTED, Y-TRANSLATIONS MAY BE SATISFIED SIMULTANEOUSLY 045012,000366: # PROVIDED THAT THERE ARE NO AC QUAD FAILURES. IF THERE ARE AC FAILURES, Y-TRANSLATION COMMANDS WILL BE IGNORED, 045013,000367: # IN WHICH CASE THE ASTRONAUT SHOULD SWITCH TO BD ROLL. 045014,000368: 045015,000369: # IF BDROLL IS SELECTED, Z-TRANSLATIONS MAY BE SATISFIED SIMULTANEOUSLY PROVIDED THAT THERE ARE NO BD QUAD 045016,000370: # FAILURES. IF THERE ARE BD FAILURES, Z-TRANSLATION COMMANDS WILL BE IGNORED, IN WHICH CASE THE ASTRONAUT SHOULD 045017,000371: # SWITCH TO AC ROLL. 045018,000372: 045019,000373: # NOTE THAT IF ONE QUAD FAILS (E.G. B FAILED), Z-TRANSLATION IS STILL POSSIBLE AND THAT THE UNDESIREABLE ROLL 045020,000374: # INTRODUCED BY THIS TRANSLATION WILL BE COMPENSATED BY THE TWO AC ROLL JETS ACTUATED BY THE AUTOPILOT LOGIC. 045021,000375: 045022,000376: # WORD MAKE UP....RTABLE 045023,000377: 045024,000378: # TWO WORDS, CORRESPONDING TO AC OR BD ROLL SELECTION, HAVE BEEN COMBINED INTO ONE TABLE. THE WORD CORRESPONDING 045025,000379: # TO AC ROLL HAS THE FOLLOWING INTERPRETATION: 045026,000380: 045027,000381: # BITS 9,10,11 ARE CODED TO GIVE THE NET ROLL TORQUE FOR THE WORD SELECTED. THE CODING IS: 045028,000382: 045029,000383: # BIT NO. 11 10 9 NO. OF ROLL JETS 045030,000384: 045031,000385: # 0 0 0 -2 045032,000386: # 0 0 1 -1 045033,000387: # 0 1 0 0 045034,000388: # 0 1 1 +1 045035,000389: # 1 0 0 +2 045036,000390: 045037,000391: # THIS WORD MAY THEN BE ADDED TO THE WORD SELECTED FROM THE YZ-TRANSLATION TABLE, WHICH HAS THE SAME TYPE OF 045038,000392: # CODING AS ABOVE, AND THE NET ROLL DETERMINED BY SHIFTING THE RESULTANT WORD RIGHT 8 PLACES AND SUBTRACTING FOUR. 045039,000393: 045040,000394: # THE WORD CORRESPONDING TO THE BD ROLL HAS A SIMILAR INTEPRETATION, EXCEPT THAT BITS 12, 13, 14 ARE CODED 045041,000395: # (AS ABOVE) TO GIVE THE NET ROLL TORQUE. 045042,000396: 045043,000397: # ROLL TRANS QUADFAIL BIAS 045044,000398: 045045,000399: 17,3155 11000 RTABLE OCT 11000 # 0 0 045046,000400: 17,3156 22125 OCT 22125 # + 0 045047,000401: 17,3157 00252 OCT 00252 # - 0 045048,000402: 17,3160 11231 OCT 11231 # 0 +Y(+Z) 3 045049,000403: 17,3161 15421 OCT 15421 # + +Y(+Z) 3 045050,000404: 17,3162 04610 OCT 04610 # - +Y(+Z) 3 045051,000405: 17,3163 11146 OCT 11146 # 0 -Y(-Z) 6 045052,000406: 17,3164 15504 OCT 15504 # + -Y(-Z) 6 045053,000407: 17,3165 04442 OCT 04442 # - -Y(-Z) 6 045054,000408: 17,3166 11000 OCT 11000 # 0 A(B) 9 045055,000409: 17,3167 15504 OCT 15504 # + A(B) 9 045056,000410: 17,3170 04610 OCT 04610 # - A(B) 9 045057,000411: 17,3171 11000 OCT 11000 # 0 C(D) 12 045058,000412: 17,3172 15421 OCT 15421 # + C(D) 12 045059,000413: 17,3173 04442 OCT 04442 # - C(D) 12 045060,000414: 045061,000415: # Page 1023 045062,000416: # RTABLE MASKS: 045063,000417: 045064,000418: 17,3174 03760 ACRJETS OCT 03760 045065,000419: 17,3175 34017 BDRJETS OCT 34017 045066,000420: 045067,000421: # Page 1024 045068,000422: # Y, Z TRANSLATION TABLE 045069,000423: 045070,000424: # ONCE AC OR BD ROLL IS SELECTED THE QUAD PAIR WHICH IS NOT BEING USED TO SATISFY THE ROLL COMMANDS MAY BE 045071,000425: # USED TO SATISFY THE REMAINING TRANSLATION COMMANDS. HOWEVER, WE MUST MAKE SURE THAT ROLL COMMANDS ARE SATISFIED 045072,000426: # WHEN THEY OCCUR. THEREFORE, THE Y-Z TRANSLATIONS FROM THIS TABLE WILL BE IGNORED IF THE NET ROLL TORQUE OF THE 045073,000427: # COMBINED WORD IS ZERO AND THE ROLL COMMANDS ARE NON-ZERO. THIS SITUATION WOULD OCCUR, FOR EXAMPLE, IF WE ENCOUNTER 045074,000428: # SIMULTANEOUS +R +Y -Z COMMANDS AND A QUAD D FAILURE WHILE USING AC FOR ROLL. 045075,000429: 045076,000430: # TO FACILITATE THE LOGIC, THE Y-Z TRANSLATION TABLE HAS BEEN CODED IN A MANNER SIMILAR TO THE ROLL TABLE 045077,000431: # ABOVE. 045078,000432: 045079,000433: # BITS 9,10,11 ARE CODED TO GIVE THE NET ROLL TORQUE INCURRED BY Z-TRANSLATIONS. THE WORD SELECTED CAN THEN BE 045080,000434: # ADDED TO TEH AC-ROLL WORD AND THE RESULTANT ROLL TORQUE DETERMINED FROM THE COMBINED WORD. SIMILARLY BITS 045081,000435: # 12,13,14 ARE CODED TO GIVE THE NET ROLL TORQUE INCURRED BY Y-TRANSLATIONS WHEN BD-ROLL IS SELECTED. 045082,000436: 045083,000437: # TRANSLATION QUADFAIL BIAS 045084,000438: 045085,000439: 17,3176 11000 YZTABLE OCT 11000 # 0 0 045086,000440: 17,3177 11231 OCT 11231 # +Z(+Y) 0 045087,000441: 17,3200 11146 OCT 11146 # -Z(-Y) 0 045088,000442: 17,3201 11000 OCT 11000 # 0 B(A) 3 045089,000443: 17,3202 04610 OCT 04610 # +Z(+Y) B(A) 3 045090,000444: 17,3203 15504 OCT 15504 # -Z(-Y) B(A) 3 045091,000445: 17,3204 11000 OCT 11000 # 0 D(C) 6 045092,000446: 17,3205 15421 OCT 15421 # +Z(+Y) D(C) 6 045093,000447: 17,3206 04442 OCT 04442 # -Z(-Y) D(C) 6 045094,000448: 045095,000449: # YZ-TABLE MASKS: 045096,000450: 045097,000451: 17,3207 03417 BDZJETS OCT 03417 045098,000452: 17,3210 34360 ACYJETS OCT 34360 045099,000453: 045100,000454: # ADDITIONAL CONSTANTS 045101,000455: 045102,000456: 17,3211 7715 =-2 = NEG2 045103,000457: 17,3211 6061 =-4 = NEG4 045104,000458: 045105,000459: # Page 1025 045106,000460: # CALCULATION OF JET ON-TIMES 045107,000461: 045108,000462: # THE ROTATION COMMANDS (TAU'S), WHICH WERE DETERMINED FROM THE JET SWITCHING LOGIC ON THE BASIS OF SINGLE JET 045109,000463: # OPERATION, MUST NOW BE UPDATED BY THE ACTUAL NUMBER OF JETS TO BE USED IN SATISFYING THESE COMMANDS. TAU MUST 045110,000464: # ALSO BE DECREMENTED ACCORDING TO THE EXPECTED TORQUE GENERATED BY THE NEW COMMANDS ACTING OVER THE NEXT T5 045111,000465: # INTERVAL. 045112,000466: 045113,000467: # IN ORDER TO MAINTAIN ACCURATE KNOWLEDGE OF VEHICLE ANGULAR RATES, WE MUST ALSO PROVIDE EXPECTED FIRING TIMES 045114,000468: # (DFT'S, ALSO IN TERMS OF 1-JET OPERATION) FOR THE RATE FILTER. 045115,000469: 045116,000470: # NOTE THAT TRANSLATIONS CAN PRODUCE ROTATIONS EVEN THOUGH NO ROTATIONS WERE CALLED FOR. NEVERTHELESS, WE MUST 045117,000471: # UPDATE DFT. 045118,000472: 045119,000473: # WHEN THE ROTATIONS HAVE FINISHED, WE MUST PROVIDE CHANNEL INFORMATION TO THE T6 PROGRAM TO CONTINUE ON WITH 045120,000474: # THE TRANSLATIONS. THIS WILL BE DONE IN THE NEXT SECTION. HOWEVER, TO INSURE THAT JETS ARE NOT FIRED FOR LESS 045121,000475: # THAN A MINIMUM IMPULSE (14MS), ALL JET CHANNEL COMMANDS WILL BE HELD FIXED FROM THE START OF THE T5 PROGRAM FOR 045122,000476: # AT LEAST 14MS UNTIL THE INITIALIZATION OF NEW COMMANDS. MOREOVER, A 14MS ON-TIME WILL BE ADDED TO ANY ROTATIONAL 045123,000477: # COMMANDS GENERATED BY THE MANUAL CONTROLS OR THE JET SWITCHING LOGIC, AND ALL TRANSLATION COMMANDS WILL BE 045124,000478: # ACTIVE FOR AT LEAST ONE CYCLE OF THE T5 PROGRAM (.1SEC) 045125,000479: 045126,000480: # PITCH JET ON-TIME CALCULATION 045127,000481: 045128,000482: 17,3211 11562 PITCHTIM CCS TAU1 045129,000483: 17,3212 13221 TCF PTAUPOS 045130,000484: 17,3213 13215 TCF +2 045131,000485: 17,3214 13217 TCF PTAUNEG 045132,000486: 17,3215 55550 TS DFT1 # NO PITCH ROTATION 045133,000487: 17,3216 13417 TCF PBYPASS # COMMANDS 045134,000488: 045135,000489: 17,3217 41523 PTAUNEG CS NPJETS 045136,000490: 17,3220 55523 TS NPJETS 045137,000491: 17,3221 31562 PTAUPOS CA TAU1 045138,000492: 17,3222 00006 EXTEND 045139,000493: 17,3223 51523 INDEX NPJETS 045140,000494: 17,3224 73400 MP NJET 045141,000495: 17,3225 55461 TS BLAST1 045142,000496: 17,3226 63333 AD =-.1SEC 045143,000497: 17,3227 00006 EXTEND 045144,000498: 17,3230 63241 BZMF AD14MSP 045145,000499: 17,3231 51523 INDEX NPJETS 045146,000500: 17,3232 33334 CA DFTMAX # THE PITCH ON-TIME IS GREATER THAN .1 SEC 045147,000501: 17,3233 55550 TS DFT1 045148,000502: 17,3234 40000 COM 045149,000503: 17,3235 27562 ADS TAU1 # UPDATE TAU1 045150,000504: 17,3236 33335 CAF =+.1SEC # LIMIT THE LENGTH OF PITCH ROTATION 045151,000505: 17,3237 55461 TS BLAST1 # COMMANDS TO 0.1 SEC SO THAT ONLY 045152,000506: 17,3240 13404 TCF ASMBLWP # X-TRANSLATIONS WILL CONTINUE ON SWITCH 045153,000507: # OVER TO TVC 045154,000508: 17,3241 41461 AD14MSP CS BLAST1 # SEE IF JET ON TIME IS LESS THAN 045155,000509: 17,3242 63340 AD =14MS # MINIMUM IMPULSE TIME 045156,000510: 17,3243 00006 EXTEND 045157,000511: 17,3244 63247 BZMF PBLASTOK # IF SO LIMIT MINIMUM ON TIME TO 14 MS 045158,000512: 17,3245 33340 CAF =14MS 045159,000513: # Page 1026 045160,000514: 17,3246 55461 TS BLAST1 045161,000515: 17,3247 31461 PBLASTOK CA BLAST1 045162,000516: 17,3250 00006 EXTEND # THE PITCH COMMANDS WILL BE COMPLETED 045163,000517: 17,3251 71523 MP NPJETS # WITHIN THE TS-CYCLE TIME 045164,000518: 17,3252 23550 LXCH DFT1 # FOR USE IN UPDATING RATE FILTER 045165,000519: 17,3253 55562 TS TAU1 # ZERO TAU1 (ACC CONTAINS ZERO) 045166,000520: 17,3254 13404 TCF ASMBLWP 045167,000521: 045168,000522: # Page 1027 045169,000523: # YAW JET ON-TIME CALCULATION 045170,000524: 045171,000525: 17,3255 11563 YAWTIME CCS TAU2 045172,000526: 17,3256 13265 TCF YTAUPOS 045173,000527: 17,3257 13261 TCF +2 045174,000528: 17,3260 13263 TCF YTAUNEG 045175,000529: 17,3261 55551 TS DFT2 # NO YAW ROTATION COMMANDS 045176,000530: 17,3262 13563 TCF YBYPASS 045177,000531: 045178,000532: 17,3263 41524 YTAUNEG CS NYJETS 045179,000533: 17,3264 55524 TS NYJETS 045180,000534: 17,3265 31563 YTAUPOS CA TAU2 045181,000535: 17,3266 00006 EXTEND 045182,000536: 17,3267 51524 INDEX NYJETS 045183,000537: 17,3270 73400 MP NJET 045184,000538: 17,3271 55463 TS BLAST2 045185,000539: 17,3272 63333 AD =-.1SEC 045186,000540: 17,3273 00006 EXTEND 045187,000541: 17,3274 63305 BZMF AD14MSY 045188,000542: 17,3275 51524 INDEX NYJETS 045189,000543: 17,3276 33334 CA DFTMAX # YAW COMMANDS WILL LAST LONGER THAN .1SEC 045190,000544: 17,3277 55551 TS DFT2 045191,000545: 17,3300 40000 COM 045192,000546: 17,3301 27563 ADS TAU2 # DECREMENT TAU2 045193,000547: 17,3302 33335 CAF =+.1SEC # LIMIT THE LENGTH OF YAW ROTATION COMMAND 045194,000548: 17,3303 55463 TS BLAST2 # TO 0.1 SEC SO THAT ONLY X-TRANSLATION 045195,000549: 17,3304 13550 TCF ASMBLWY # WILL CONTINUE ON SWITCH OVER TO TVC 045196,000550: 045197,000551: 17,3305 41463 AD14MSY CS BLAST2 # SEE IF JET ON-TIME LESS THAN 045198,000552: 17,3306 63340 AD =14MS # MINIMUM IMPULSE TIME 045199,000553: 17,3307 00006 EXTEND 045200,000554: 17,3310 63313 BZMF YBLASTOK # IF SO, LIMIT MINIMUM ON-TIME TO 14 MS 045201,000555: 17,3311 33340 CAF =14MS 045202,000556: 17,3312 55463 TS BLAST2 045203,000557: 17,3313 31463 YBLASTOK CA BLAST2 # YAW COMMANDS WILL BE COMPLETED WITHIN 045204,000558: 17,3314 00006 EXTEND # THE T5CYCLE TIME 045205,000559: 17,3315 71524 MP NYJETS 045206,000560: 17,3316 23551 LXCH DFT2 045207,000561: 17,3317 55563 TS TAU2 # ZERO TAU2 045208,000562: 17,3320 13550 TCF ASMBLWY 045209,000563: 045210,000564: # Page 1028 045211,000565: # ROLL ON-TIME CALCULATION: 045212,000566: 045213,000567: 17,3321 11561 ROLLTIME CCS TAU 045214,000568: 17,3322 13341 TCF RBLAST 045215,000569: 17,3323 13325 TCF +2 045216,000570: 17,3324 13341 TCF RBLAST 045217,000571: 17,3325 51522 INDEX NRJETS 045218,000572: 17,3326 33334 CA DFTMAX # UPDATE DFT EVEN THO NO ROLL COMMANDS ARE 045219,000573: 17,3327 55547 TS DFT # PRESENT 045220,000574: 17,3330 13543 TCF RBYPASS 045221,000575: 045222,000576: 17,3331 77037 DEC -480 B-14 # =-.3SEC 045223,000577: 17,3332 77277 DEC -320 B-14 # =-.2SEC 045224,000578: 17,3333 77537 =-.1SEC DEC -160 B-14 # =-.1SEC 045225,000579: 17,3334 00000 DFTMAX DEC 0 B-14 # 0 045226,000580: 17,3335 00240 =+.1SEC DEC 160 B-14 # =+.1SEC 045227,000581: 17,3336 00500 DEC 320 B-14 # =+.2SEC 045228,000582: 17,3337 00740 DEC 480 B-14 # =+.3SEC 045229,000583: 17,3340 00027 =14MS DEC 23 B-14 # =14MS 045230,000584: 045231,000585: 17,3341 31561 RBLAST CA TAU 045232,000586: 17,3342 00006 EXTEND 045233,000587: 17,3343 51522 INDEX NRJETS 045234,000588: 17,3344 73400 MP NJET 045235,000589: 17,3345 55457 TS BLAST # BLAST IS AN INTERMEDIATE VARIABLE 045236,000590: # USED IN DETERMINING THE JET ON-TIMES 045237,000591: 17,3346 63333 AD =-.1SEC 045238,000592: 17,3347 00006 EXTEND 045239,000593: 17,3350 63361 BZMF AD14MSR 045240,000594: 17,3351 51522 INDEX NRJETS # THE ROLL ROTATION WILL LAST LONGER 045241,000595: 17,3352 33334 CA DFTMAX # THAN THE T5 CYCLE TIME 045242,000596: 17,3353 55547 TS DFT 045243,000597: 17,3354 40000 COM 045244,000598: 17,3355 27561 ADS TAU 045245,000599: 17,3356 33335 CAF =+.1SEC # LIMIT THE LENGTH OF ROLL ROTATION 045246,000600: 17,3357 55457 TS BLAST # COMMANDS TO 0.1 SEC SO THAT ONLY Y-Z 045247,000601: 17,3360 13424 TCF ASMBLWR # TRANSLATION COMMANDS CONTINUE 045248,000602: 045249,000603: 17,3361 41457 AD14MSR CS BLAST # SEE IF THE JET ON-TIME LESS THAN 045250,000604: 17,3362 63340 AD =14MS # MINIMUM IMPULSE TIME 045251,000605: 17,3363 00006 EXTEND 045252,000606: 17,3364 63367 BZMF RBLASTOK 045253,000607: 17,3365 33340 CAF =14MS # IF SO, LIMIT MINIMUM ON-TIME TO 14 MS 045254,000608: 17,3366 55457 TS BLAST 045255,000609: 17,3367 31457 RBLASTOK CA BLAST 045256,000610: 17,3370 00006 EXTEND 045257,000611: 17,3371 71522 MP NRJETS 045258,000612: 17,3372 23547 LXCH DFT 045259,000613: 17,3373 55561 TS TAU # ZERO TAU 045260,000614: 17,3374 13424 TCF ASMBLWR 045261,000615: 045262,000616: # Page 1029 045263,000617: 17,3375 65252 DEC -.333333 # = -1/3 045264,000618: 17,3376 57777 DEC -.500000 # = -1.2 045265,000619: 17,3377 40000 DEC -.999999 # = -1 (NEGMAX) 045266,000620: 17,3400 00000 NJET DEC 0 B-14 045267,000621: 17,3401 37777 DEC .999999 # = +1 (POSMAX) 045268,000622: 17,3402 20000 DEC .500000 # = +1/2 045269,000623: 17,3403 12525 DEC .333333 # = +1/3 045270,000624: 045271,000625: # Page 1030 045272,000626: # WHEN THE ROTATION COMMANDS ARE COMPLETED, IT IS NECESSARY TO REPLACE THESE COMMANDS BY NEW COMMANDS WHICH 045273,000627: # CONTINUE ON WITH THE TRANSLATIONS IF ANY ARE PRESENT. 045274,000628: 045275,000629: # IN THIS SECTION THESE NEW COMMANDS ARE GENERATED AND STORED FOR REPLACEMENT OF THE CHANNEL COMMANDS WHEN THE 045276,000630: # CORRESPONDING ROTATIONS ARE COMPLETED. 045277,000631: 045278,000632: # GENERATION OF THE SECOND PITCH(X-TRANS) WORD...PWORD2 045279,000633: 045280,000634: 17,3404 11626 ASMBLWP CCS RACFAIL 045281,000635: 17,3405 13413 TCF FPX2 # IF FAILURE ON AC IGNORE X-TRANSLATION 045282,000636: 17,3406 13410 TCF +2 045283,000637: 17,3407 13413 TCF FPX2 045284,000638: 17,3410 51513 INDEX XNDX1 045285,000639: 17,3411 32705 CA XLNNDX 045286,000640: 17,3412 50000 INDEX A 045287,000641: 17,3413 32741 FPX2 CA PYTABLE 045288,000642: 17,3414 72760 MASK PJETS 045289,000643: 17,3415 55454 TS PWORD2 045290,000644: 17,3416 13255 TCF YAWTIME 045291,000645: 045292,000646: 17,3417 31453 PBYPASS CA PWORD1 # THE T6 PROGRAM WILL LOAD PWORD2 045293,000647: 17,3420 55454 TS PWORD2 # UPON ENTRY 045294,000648: 17,3421 34714 CAF ZERO 045295,000649: 17,3422 55461 TS BLAST1 # THERE IS NO PWORD2 045296,000650: 17,3423 13255 TCF YAWTIME 045297,000651: 045298,000652: # Page 1031 045299,000653: # GENERATION OF THE SECOND ROLL (Y,Z) WORD (RWORD2) 045300,000654: 045301,000655: 17,3424 11515 ASMBLWR CCS YNDX # CHECK FOR Y-TRANS 045302,000656: 17,3425 13435 TCF ACBD2Y 045303,000657: 17,3426 34714 NO2Y CAF ZERO 045304,000658: 17,3427 55452 TS RWORD2 045305,000659: 17,3430 11516 CCS ZNDX # CHECK FOR Z-TRANS 045306,000660: 17,3431 13500 TCF ACBD2Z 045307,000661: 17,3432 34714 NO2Z CAF ZERO 045308,000662: 17,3433 27452 ADS RWORD2 045309,000663: 17,3434 13211 TCF PITCHTIM # RWORD2 ASSEMBLED 045310,000664: 045311,000665: 17,3435 11630 ACBD2Y CCS ACORBD 045312,000666: 17,3436 13453 TCF AC2Y # CAN DO Y-TRANS 045313,000667: 17,3437 13453 TCF AC2Y 045314,000668: 17,3440 13441 TCF +1 # USING AC FOR ROLL 045315,000669: 17,3441 11626 CCS RACFAIL 045316,000670: 17,3442 13426 TCF NO2Y # USING AC AND AC HAS FAILED 045317,000671: 17,3443 13445 TCF +2 045318,000672: 17,3444 13426 TCF NO2Y # DITTO 045319,000673: 045320,000674: 17,3445 51515 INDEX YNDX # NO FAILURES, CAN DO Y 045321,000675: 17,3446 32705 CA XLNNDX 045322,000676: 17,3447 50000 INDEX A 045323,000677: 17,3450 33155 CA RTABLE 045324,000678: 17,3451 73174 MASK ACRJETS 045325,000679: 17,3452 13427 TCF NO2Y +1 045326,000680: 045327,000681: 17,3453 11626 AC2Y CCS RACFAIL 045328,000682: 17,3454 36214 CAF THREE 045329,000683: 17,3455 13457 TCF +2 045330,000684: 17,3456 36211 CAF SIX 045331,000685: 17,3457 51515 INDEX YNDX 045332,000686: 17,3460 63016 AD XLN1NDX 045333,000687: 17,3461 50000 INDEX A 045334,000688: 17,3462 33176 CA YZTABLE 045335,000689: 17,3463 73210 MASK ACYJETS 045336,000690: 17,3464 55452 TS RWORD2 045337,000691: 17,3465 00006 EXTEND 045338,000692: 17,3466 74707 MP BIT4 045339,000693: 17,3467 67715 AD =-2 045340,000694: 17,3470 55522 TS NRJETS 045341,000695: 17,3471 41457 CS BLAST 045342,000696: 17,3472 63335 AD =+.1SEC 045343,000697: 17,3473 00006 EXTEND 045344,000698: 17,3474 71522 MP NRJETS 045345,000699: 17,3475 30001 CA L 045346,000700: 17,3476 27547 ADS DFT 045347,000701: 17,3477 13430 TCF NO2Y +2 045348,000702: # Page 1032 045349,000703: 17,3500 11630 ACBD2Z CCS ACORBD 045350,000704: 17,3501 13531 TCF BDF2Z # USING BD-ROLL 045351,000705: 17,3502 13531 TCF BDF2Z # MUST CHECK FOR BD FAILURES 045352,000706: 17,3503 13504 TCF +1 045353,000707: 17,3504 11627 CCS RBDFAIL # USING AC FOR ROLL, CAN DO Z-TRANS 045354,000708: 17,3505 36214 CAF THREE 045355,000709: 17,3506 13510 TCF +2 045356,000710: 17,3507 36211 CAF SIX 045357,000711: 17,3510 51516 INDEX ZNDX 045358,000712: 17,3511 63016 AD XLN1NDX 045359,000713: 17,3512 50000 INDEX A 045360,000714: 17,3513 33176 CA YZTABLE 045361,000715: 17,3514 73207 MASK BDZJETS 045362,000716: 17,3515 27452 ADS RWORD2 045363,000717: 17,3516 00006 EXTEND 045364,000718: 17,3517 74704 MP BIT7 045365,000719: 17,3520 67715 AD =-2 045366,000720: 17,3521 55522 TS NRJETS 045367,000721: 17,3522 41457 CS BLAST 045368,000722: 17,3523 63335 AD =+.1SEC 045369,000723: 17,3524 00006 EXTEND 045370,000724: 17,3525 71522 MP NRJETS 045371,000725: 17,3526 30001 CA L 045372,000726: 17,3527 27547 ADS DFT 045373,000727: 17,3530 13211 TCF PITCHTIM 045374,000728: 045375,000729: 17,3531 11627 BDF2Z CCS RBDFAIL 045376,000730: 17,3532 13432 TCF NO2Z # USING BD-ROLL AND BD HAS FAILED 045377,000731: 17,3533 13535 TCF +2 045378,000732: 17,3534 13432 TCF NO2Z # DITTO 045379,000733: 17,3535 51516 INDEX ZNDX 045380,000734: 17,3536 32705 CA XLNNDX 045381,000735: 17,3537 50000 INDEX A 045382,000736: 17,3540 33155 CA RTABLE 045383,000737: 17,3541 73175 MASK BDRJETS 045384,000738: 17,3542 13433 TCF NO2Z +1 045385,000739: 045386,000740: 17,3543 31451 RBYPASS CA RWORD1 045387,000741: 17,3544 55452 TS RWORD2 045388,000742: 17,3545 34714 CAF ZERO 045389,000743: 17,3546 55457 TS BLAST 045390,000744: 17,3547 13211 TCF PITCHTIM 045391,000745: 045392,000746: # Page 1033 045393,000747: # GENERATION OF THE SECOND YAW (X-TRANS) WORD...YWORD2 045394,000748: 045395,000749: 17,3550 11627 ASMBLWY CCS RBDFAIL 045396,000750: 17,3551 13557 TCF FYX2 # IF FAILURE ON BD IGNORE X-TRANSLATION 045397,000751: 17,3552 13554 TCF +2 045398,000752: 17,3553 13557 TCF FYX2 045399,000753: 17,3554 51514 INDEX XNDX2 045400,000754: 17,3555 32705 CA XLNNDX 045401,000755: 17,3556 50000 INDEX A 045402,000756: 17,3557 32741 FYX2 CA PYTABLE 045403,000757: 17,3560 72761 MASK YJETS 045404,000758: 17,3561 55456 TS YWORD2 045405,000759: 17,3562 13567 TCF T6SETUP 045406,000760: 045407,000761: 17,3563 31455 YBYPASS CA YWORD1 045408,000762: 17,3564 55456 TS YWORD2 045409,000763: 17,3565 34714 CAF ZERO 045410,000764: 17,3566 55463 TS BLAST2 045411,000765: 045412,000766: # Page 1034 045413,000767: # SORT THE JET ON-TIMES 045414,000768: 045415,000769: # AT THIS POINT ALL THE CHANNEL COMMANDS AND JET ON-TIMES HAVE BEEN DETERMINED. IN SUMMARY THESE ARE: 045416,000770: 045417,000771: # RWORD1 045418,000772: # RWORD2 BLAST 045419,000773: 045420,000774: # PWORD1 045421,000775: # PWORD2 BLAST1 045422,000776: 045423,000777: # YWORD1 045424,000778: # YWORD2 BLAST2 045425,000779: 045426,000780: # IN THIS SECTION THE JET ON-TIMES ARE SORTED AND THE SEQUENCE OF T6 INTERRUPTS IS DETERMINED. TO FACILITATE 045427,000781: # THE SORTING PROCESS AND THE T6 PROGRAM, THE VARIABLES BLAST, BLAST1, BLAST2, ARE RESERVED AS DOUBLE PRECISION 045428,000782: # WORDS. THE LOWER PART OF THESE WORDS CONTAIN A BRANCH INDEX ASSOCIATED WITH THE ROTATION AXIS OF THE HIGHER 045429,000783: # ORDER WORD. 045430,000784: 045431,000785: 17,3567 34714 T6SETUP CAF ZERO # BRANCH INDEX FOR ROLL 045432,000786: 17,3570 55460 TS BLAST +1 045433,000787: 17,3571 34710 CAF FOUR # BRANCH INDEX FOR PITCH 045434,000788: 17,3572 55462 TS BLAST1 +1 045435,000789: 17,3573 34717 CAF ELEVEN # BRANCH INDEX FOR YAW 045436,000790: 17,3574 55464 TS BLAST2 +1 045437,000791: 045438,000792: 17,3575 41457 CS BLAST 045439,000793: 17,3576 61461 AD BLAST1 045440,000794: 17,3577 00006 EXTEND 045441,000795: 17,3600 63624 BZMF DXCHT12 # T1 OR T2 045442,000796: 17,3601 41461 CHECKT23 CS BLAST1 045443,000797: 17,3602 61463 AD BLAST2 045444,000798: 17,3603 00006 EXTEND 045445,000799: 17,3604 63630 BZMF DXCHT23 045446,000800: 17,3605 41461 CALCDT6 CS BLAST1 045447,000801: 17,3606 27463 ADS BLAST2 045448,000802: 17,3607 41457 CS BLAST 045449,000803: 17,3610 27461 ADS BLAST1 # END OF SORTING PROCEDURE 045450,000804: 17,3611 00006 EXTEND # RESET T5LOC TO BEGIN PHASE1 045451,000805: 17,3612 33623 DCA RCS2CADR 045452,000806: 17,3613 53313 DXCH T5LOC 045453,000807: 17,3614 44712 ENDJETS CS BIT1 # RESET BIT1 FOR INITIALIZATION OF 045454,000808: 17,3615 71501 MASK RCSFLAGS # T6 PROGRAM 045455,000809: 17,3616 55501 TS RCSFLAGS 045456,000810: 17,3617 44714 CS ZERO # RESET T5PHASE FOR PHASE1 045457,000811: 17,3620 55465 TS T5PHASE 045458,000812: 17,3621 15222 TCF RESUME # RESUME INTERRUPTED PROGRAM 045459,000813: 17,3622 E6,1510 EBANK= KMPAC 045460,000814: 17,3622 02106 42066 RCS2CADR 2CADR RCSATT 045461,000815: 045462,000816: # Page 1035 045463,000817: 17,3624 53460 DXCHT12 DXCH BLAST 045464,000818: 17,3625 53462 DXCH BLAST1 045465,000819: 17,3626 53460 DXCH BLAST 045466,000820: 17,3627 13601 TCF CHECKT23 045467,000821: 045468,000822: 17,3630 53462 DXCHT23 DXCH BLAST1 045469,000823: 17,3631 53464 DXCH BLAST2 045470,000824: 17,3632 53462 DXCH BLAST1 045471,000825: 17,3633 41457 CS BLAST 045472,000826: 17,3634 61461 AD BLAST1 045473,000827: 17,3635 00006 EXTEND 045474,000828: 17,3636 63640 BZMF +2 045475,000829: 17,3637 13605 TCF CALCDT6 045476,000830: 17,3640 53460 DXCH BLAST 045477,000831: 17,3641 53462 DXCH BLAST1 045478,000832: 17,3642 53460 DXCH BLAST 045479,000833: 17,3643 13605 TCF CALCDT6 045480,000834: 045481,000835: # Page 1036 045482,000836: # T6 PROGRAM AND CHANNEL SETUP 045483,000837: 045484,000838: 21,3751 BANK 21 045485,000839: 17,2000 SETLOC DAPS5 045486,000840: 17,2000 BANK 045487,000841: 045488,000842: 17,3644 22016 T6START LXCH BANKRUPT 045489,000843: 17,3645 00006 EXTEND 045490,000844: 17,3646 22012 QXCH QRUPT 045491,000845: 17,3647 10031 CCS TIME6 # CHECK TO SEE IF TIME6 WAS RESET 045492,000846: 17,3650 15222 TCF RESUME # AFTER T6RUPT OCCURRED (IN T5RUPT) 045493,000847: 17,3651 13653 TCF +2 # IF SO WAIT FOR NEXT T6RUPT BEFORE 045494,000848: 17,3652 15222 TCF RESUME # TAKING ACTION 045495,000849: 045496,000850: 17,3653 41501 CS RCSFLAGS 045497,000851: 17,3654 74712 MASK BIT1 # IF BIT1 IS 0 RESET TO 1 045498,000852: 17,3655 00006 EXTEND # AND INITIALIZE CHANNEL 045499,000853: 17,3656 13667 BZF T6RUPTOR 045500,000854: 17,3657 27501 ADS RCSFLAGS 045501,000855: 17,3660 31451 CA RWORD1 045502,000856: 17,3661 00006 EXTEND # INITIALIZE CHANNELS 5,6 WITH WORD1 045503,000857: 17,3662 01006 WRITE CHAN6 045504,000858: 17,3663 31453 CA PWORD1 045505,000859: 17,3664 61455 AD YWORD1 045506,000860: 17,3665 00006 EXTEND 045507,000861: 17,3666 01005 WRITE CHAN5 045508,000862: 045509,000863: 17,3667 11457 T6RUPTOR CCS BLAST 045510,000864: 17,3670 13747 TCF ZBLAST # ZERO BLAST1 045511,000865: 17,3671 13706 TCF REPLACE # REPLACE WORD1 045512,000866: 17,3672 13674 TCF +2 045513,000867: 17,3673 13706 TCF REPLACE 045514,000868: 17,3674 11461 T6L1 CCS BLAST1 045515,000869: 17,3675 13752 TCF ZBLAST1 045516,000870: 17,3676 13713 TCF REPLACE1 045517,000871: 17,3677 13701 TCF +2 045518,000872: 17,3700 13713 TCF REPLACE1 045519,000873: 17,3701 11463 T6L2 CCS BLAST2 045520,000874: 17,3702 13755 TCF ZBLAST2 045521,000875: 17,3703 13720 TCF REPLACE2 045522,000876: 17,3704 15222 TCF RESUME 045523,000877: 17,3705 13720 TCF REPLACE2 045524,000878: 045525,000879: 17,3706 51460 REPLACE INDEX BLAST +1 045526,000880: 17,3707 03725 TC REPLACER 045527,000881: 17,3710 44712 CS ONE 045528,000882: 17,3711 55457 TS BLAST 045529,000883: 17,3712 13674 TCF T6L1 045530,000884: 045531,000885: 17,3713 51462 REPLACE1 INDEX BLAST1 +1 045532,000886: # Page 1037 045533,000887: 17,3714 03725 TC REPLACER 045534,000888: 17,3715 44712 CS ONE 045535,000889: 17,3716 55461 TS BLAST1 045536,000890: 17,3717 13701 TCF T6L2 045537,000891: 045538,000892: 17,3720 51464 REPLACE2 INDEX BLAST2 +1 045539,000893: 17,3721 03725 TC REPLACER 045540,000894: 17,3722 44712 CS ONE 045541,000895: 17,3723 55463 TS BLAST2 045542,000896: 17,3724 15222 TCF RESUME 045543,000897: 045544,000898: 17,3725 31452 REPLACER CA RWORD2 # INITIALIZE CHANNELS 5,6 WITH WORD2 045545,000899: 17,3726 00006 EXTEND 045546,000900: 17,3727 01006 WRITE CHAN6 045547,000901: 17,3730 00002 TC Q 045548,000902: 045549,000903: 17,3731 32761 REPLACEP CA YJETS 045550,000904: 17,3732 00006 EXTEND 045551,000905: 17,3733 02005 RAND CHAN5 045552,000906: 17,3734 61454 AD PWORD2 045553,000907: 17,3735 00006 EXTEND 045554,000908: 17,3736 01005 WRITE CHAN5 045555,000909: 17,3737 00002 TC Q 045556,000910: 045557,000911: 17,3740 32760 REPLACEY CA PJETS 045558,000912: 17,3741 00006 EXTEND 045559,000913: 17,3742 02005 RAND CHAN5 045560,000914: 17,3743 61456 AD YWORD2 045561,000915: 17,3744 00006 EXTEND 045562,000916: 17,3745 01005 WRITE CHAN5 045563,000917: 17,3746 00002 TC Q 045564,000918: 045565,000919: 17,3747 34714 ZBLAST CAF ZERO 045566,000920: 17,3750 57457 XCH BLAST 045567,000921: 17,3751 13757 TCF ENABT6 045568,000922: 17,3752 34714 ZBLAST1 CAF ZERO 045569,000923: 17,3753 57461 XCH BLAST1 045570,000924: 17,3754 13757 TCF ENABT6 045571,000925: 17,3755 34714 ZBLAST2 CAF ZERO 045572,000926: 17,3756 57463 XCH BLAST2 045573,000927: 17,3757 54031 ENABT6 TS TIME6 045574,000928: 17,3760 34674 CAF NEGMAX 045575,000929: 17,3761 00006 EXTEND 045576,000930: 17,3762 05013 WOR CHAN13 # ENABLE T6RUPT 045577,000931: 17,3763 15222 TCF RESUME 045578,000932: 045579,000933: # END OF T6 INTERRUPT 045580,000934: 045581,000935: 17,3764 ENDSLECT EQUALS 045582,000936: End of include-file JET_SELECTION_LOGIC.agc. Parent file is MAIN.agc