Source Code

033320,000001: # Copyright: Public domain. 033321,000002: # Filename: LUNAR_LANDING_GUIDANCE_EQUATIONS.agc 033322,000003: # Purpose: A section of Luminary 1C, revision 131. 033323,000004: # It is part of the source code for the Lunar Module's (LM) 033324,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14. 033325,000006: # This file is intended to be a faithful transcription, except 033326,000007: # that the code format has been changed to conform to the 033327,000008: # requirements of the yaYUL assembler rather than the 033328,000009: # original YUL assembler. 033329,000010: # Reference: pp. 798-827 of 1729.pdf. 033330,000011: # Contact: Ron Burkey <info@sandroid.org>. 033331,000012: # Website: www.ibiblio.org/apollo/index.html 033332,000013: # Mod history: 05/24/03 RSB. Began transcribing. 033333,000014: # 05/14/05 RSB Corrected website reference above. 033334,000015: 033335,000016: # Page 798 033336,000017: 31,2361 E7,1621 EBANK= E2DPS 033337,000018: 31,2361 COUNT* $$/F2DPS 033338,000019: 033339,000020: # ******************************************************** 033340,000021: # LUNAR LANDING FLIGHT SEQUENCE TABLES 033341,000022: # ******************************************************** 033342,000023: 033343,000024: # FLIGHT SEQUENCE TABLES ARE ARRANGED IN BY FUNCTION. THEY ARE REFERENCED USING AS AN INDEX THE REGISTER WCHPHASE: 033344,000025: # WCHPHASE = -1 ---> IGNALG 033345,000026: # WCHPHASE = 0 ---> BRAKQUAD 033346,000027: # WCHPHASE = 1 ---> APPRQUAD 033347,000028: # WCHPHASE = 2 ---> VERTICAL 033348,000029: 033349,000030: # ********************************************************* 033350,000031: 033351,000032: # ROUTINES FOR STARTING NEW GUIDANCE PHASES: 033352,000033: 033353,000034: 31,2361 12573 TCF TTFINCR # IGNALG 033354,000035: 31,2362 12573 NEWPHASE TCF TTFINCR # BRAKQUAD 033355,000036: 31,2363 12556 TCF STARTP64 # APPRQUAD 033356,000037: 31,2364 12547 TCF P65START # VERTICAL 033357,000038: 033358,000039: # PRE-GUIDANCE COMPUTATIONS: 033359,000040: 033360,000041: 31,2365 12753 TCF CALCRGVG # IGNALG 033361,000042: 31,2366 12763 PREGUIDE TCF RGVGCALC # BRAKQUAD 033362,000043: 31,2367 12654 TCF REDESIG # APPRQUAD 033363,000044: 31,2370 12763 TCF RGVGCALC # VERTICAL 033364,000045: 033365,000046: # GUIDANCE EQUATIONS: 033366,000047: 033367,000048: 31,2371 13026 TCF TTF/8CL # IGNALG 033368,000049: 31,2372 13026 WHATGUID TCF TTF/8CL # BRAKQUAD 033369,000050: 31,2373 13026 TCF TTF/8CL # APPRQUAD 033370,000051: 31,2374 13503 TCF VERTGUID # VERTICAL 033371,000052: 033372,000053: # POST GUIDANCE EQUATION COMPUTATIONS: 033373,000054: 033374,000055: 31,2375 13225 TCF CGCALC # IGNALG 033375,000056: 31,2376 13212 AFTRGUID TCF EXTLOGIC # BRAKQUAD 033376,000057: 31,2377 13212 TCF EXTLOGIC # APPRQUAD 033377,000058: 31,2400 13400 TCF STEER? # VERTICAL 033378,000059: 033379,000060: # Page 799 033380,000061: # WINDOW VECTOR COMPUTATIONS: 033381,000062: 033382,000063: 31,2401 13275 TCF EXGSUB # IGNALG 033383,000064: 31,2402 13316 WHATEXIT TCF EXBRAK # BRAKQUAD 033384,000065: 31,2403 13324 TCF EXNORM # APPRQUAD 033385,000066: 033386,000067: # DISPLAY ROUTINES: 033387,000068: 033388,000069: 31,2404 13437 WHATDISP TCF P63DISPS # BRAKQUAD 033389,000070: 31,2405 13442 TCF P64DISPS # APPRQUAD 033390,000071: 31,2406 13471 TCF VERTDISP # VERTICAL 033391,000072: 033392,000073: # ALARM ROUTINE FOR TTF COMPUTATION: 033393,000074: 033394,000075: 31,2407 13672 TCF 1406P00 # IGNALG 033395,000076: 31,2410 13674 WHATALM TCF 1406ALM # BRAKQUAD 033396,000077: 31,2411 13674 TCF 1406ALM # APPRQUAD 033397,000078: 033398,000079: # INDICES FOR REFERENCING TARGET PARAMETERS 033399,000080: 033400,000081: 31,2412 00000 OCT 0 # IGNALG 033401,000082: 31,2413 00000 TARGTDEX OCT 0 # BRAKQUAD 033402,000083: 31,2414 00034 OCT 34 # APPRQUAD 033403,000084: 033404,000085: # ************************************************************************ 033405,000086: # ENTRY POINTS: ?GUIDSUB FOR THE IGNITION ALGORITHM, LUNLAND FOR SERVOUT 033406,000087: # ************************************************************************ 033407,000088: 033408,000089: # IGNITION ALGORITHM ENTRY: DELIVERS N PASSES OF QUADRATIC GUIDANCE 033409,000090: 033410,000091: 31,2415 77776 ?GUIDSUB EXIT 033411,000092: 31,2416 34752 CAF TWO # N = 3 033412,000093: 31,2417 55647 TS NGUIDSUB 033413,000094: 31,2420 12531 TCF GUILDRET +2 033414,000095: 033415,000096: 31,2421 55647 GUIDSUB TS NGUIDSUB # ON SUCCEEDING PASSES SKIP TTFINCR 033416,000097: 31,2422 12753 TCF CALCRGVG 033417,000098: 033418,000099: # NORMAL ENTRY: CONTROL COMES HERE FROM SERVOUT 033419,000100: 033420,000101: 31,2423 05353 LUNLAND TC PHASCHNG 033421,000102: 31,2424 00035 OCT 00035 # GROUP 5: RETAIN ONLY PIPA TASK 033422,000103: 31,2425 30101 CA FLAGWRD5 # HAS THROTTLE-UP COME YET? 033423,000104: 31,2426 74744 MASK ZOOMBIT 033424,000105: 31,2427 00006 EXTEND 033425,000106: 31,2430 13431 BZF DISPEXIT +3 # NO: DO DISPLAYS ONLY 033426,000107: # Page 800 033427,000108: 31,2431 05353 TC PHASCHNG # YES: DO GUIDANCE 033428,000109: 31,2432 05023 OCT 05023 033429,000110: 31,2433 20000 OCT 20000 033430,000111: 033431,000112: # ******************************************************************* 033432,000113: # GUILDENSTERN: AUTO-MODES MONITOR (R13) 033433,000114: # ******************************************************************* 033434,000115: 033435,000116: 31,2434 COUNT* $$/R13 033436,000117: 033437,000118: # THE PHILOSOPHY OF GUILDENSTERN: ON EVERY APPEARANCE OF THE ATTITUDE-HOLD DISCRETE CHECK TO SEE IF THE ROD SWITCH 033438,000119: # HAS BEEN CLICKED. IF SO, SELECT P66. IF THE DAP IS IN AUTO AND THE 033439,000120: # 9PROGRAM IS IN PROGRESS IS P66, CHECK FOR A 033440,000121: # RESTART. IF ONE HAS OCCURRED RE-INITIALIZE P66 AND CONTINUE OTHERWISE. YOU CONTINUE WITH PRESENT DATA IN P66. TO 033441,000122: # SELECT P66 THE ATTITUDE-HOLD DISCRETE MUST BE PRESENT AND THE ROD SWITCH MUST BE HAVE CLICKED. OTHERWISE THE 033442,000123: # AUTOMATIC LANDING WILL CONTINUE. 033443,000124: 033444,000125: 31,2434 41010 GUILDEN CS MODREG # ARE WE IN P66? (EVEN THOUGH WE ARE IN AUTO 033445,000126: # STERN 033446,000127: 31,2435 62452 AD DEC66 # DAP) 033447,000128: 31,2436 00006 EXTEND 033448,000129: 31,2437 12522 BZF RESTART? # YES: GO SEE IF THERE HAS BEEN A RESTART 033449,000130: 033450,000131: 31,2440 34737 CAF BIT13 # NO: IS UN-ATTITUDE-HOLD DISCRETE HERE? 033451,000132: 31,2441 00006 EXTEND 033452,000133: 31,2442 02031 RAND CHAN31 033453,000134: 31,2443 10000 CCS A 033454,000135: 31,2444 12527 TCF GUILDRET # YES: ALL'S WELL, OR AT LEAST AUTOMATIC 033455,000136: 033456,000137: 31,2445 31746 CA RODCOUNT # NO: HAS ROD SWITCH BEEN CLICKED 033457,000138: 31,2446 00006 EXTEND 033458,000139: 31,2447 12527 BZF GUILDRET # NO: CONTINUE WITH THE AUTOMATIC LANDING 033459,000140: 033460,000141: 31,2450 03677 STARTP66 TC FASTCHNG # YES 033461,000142: 31,2451 05311 TC NEWMODEX 033462,000143: 31,2452 00102 DEC66 DEC 66 B-14 033463,000144: 31,2453 00006 EXTEND 033464,000145: 31,2454 31474 DCA HDOTDISP # SET DESIRED ALTITUDE RATE = CURRENT 033465,000146: 31,2455 53645 DXCH VDGVERT # ALTITUDE RATE. 033466,000147: 31,2456 06042 STRTP66A TC INTPRET 033467,000148: 31,2457 41535 SLOAD PUSH 033468,000149: 31,2460 01457 PBIASZ 033469,000150: 31,2461 41535 SLOAD PUSH 033470,000151: 31,2462 01455 PBIASY 033471,000152: 31,2463 55535 SLOAD VDEF 033472,000153: 31,2464 01453 PBIASX 033473,000154: 31,2465 43161 VXSC SET 033474,000155: 31,2466 25532 BIASFACT 033475,000156: 31,2467 00463 RODFLAG 033476,000157: 31,2470 26621 STOVL VBIAS 033477,000158: 31,2471 01254 TEMX 033478,000159: 31,2472 77676 VCOMP 033479,000160: # Page 801 033480,000161: 31,2473 27764 STOVL OLDPIPAX 033481,000162: 31,2474 06524 ZEROVECS 033482,000163: 31,2475 17767 STODL DELVROD 033483,000164: 31,2476 02540 RODSCALE 033484,000165: 31,2477 17757 STODL RODSCAL1 033485,000166: 31,2500 01234 PIPTIME 033486,000167: 31,2501 03760 STORE LASTTPIP 033487,000168: 31,2502 77776 EXIT 033488,000169: 31,2503 34755 CAF ZERO 033489,000170: 31,2504 55620 TS FCOLD 033490,000171: 31,2505 55610 TS FWEIGHT 033491,000172: 31,2506 55611 TS FWEIGHT +1 033492,000173: 31,2507 34752 CAF TWO # WCHPHASE = 2 ---> VERTICAL: P65,P66,P67 033493,000174: 31,2510 55647 TS WCHVERT 033494,000175: 31,2511 55621 TS WCHPHOLD 033495,000176: 31,2512 55346 TS WCHPHASE 033496,000177: 31,2513 04616 TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE 033497,000178: 31,2514 40166 CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE 033498,000179: 31,2515 05516 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE 033499,000180: 31,2516 00311 ADRES XOVINFLG 033500,000181: 31,2517 05516 TC DOWNFLAG 033501,000182: 31,2520 00143 ADRES REDFLAG 033502,000183: 31,2521 13503 TCF VERTGUID 033503,000184: 033504,000185: 31,2522 30075 RESTART? CA FLAGWRD1 # HAS THERE BEEN A RESTART? 033505,000186: 31,2523 74740 MASK RODFLBIT 033506,000187: 31,2524 00006 EXTEND 033507,000188: 31,2525 12456 BZF STRTP66A # YES. REINITIALIZE BUT LEAVE VDGVERT AS 033508,000189: # IS. 033509,000190: 033510,000191: 31,2526 13503 TCF VERTGUID # NO: CONTINUE WITH R.O.D. 033511,000192: 033512,000193: # ******************************************************************************* 033513,000194: # INITIALIZATION FOR THIS PASS 033514,000195: # ******************************************************************************* 033515,000196: 033516,000197: 31,2527 COUNT* $$/F2DPS 033517,000198: 033518,000199: 31,2527 34755 GUILDRET CAF ZERO 033519,000200: 31,2530 55746 TS RODCOUNT 033520,000201: 033521,000202: 31,2531 00006 +2 EXTEND 033522,000203: 31,2532 31625 DCA TPIP 033523,000204: 31,2533 53574 DXCH TPIPOLD 033524,000205: 033525,000206: 31,2534 03677 TC FASTCHNG 033526,000207: 033527,000208: 31,2535 00006 EXTEND 033528,000209: 31,2536 31561 DCA PIPTIME1 033529,000210: 31,2537 53625 DXCH TPIP 033530,000211: # Page 802 033531,000212: 31,2540 00006 EXTEND 033532,000213: 31,2541 31643 DCA TTF/8 033533,000214: 31,2542 53553 DXCH TTF/8TMP 033534,000215: 033535,000216: 31,2543 11623 CCS FLPASS0 033536,000217: 31,2544 12573 TCF TTFINCR 033537,000218: 033538,000219: 31,2545 51346 BRSPOT1 INDEX WCHPHASE 033539,000220: 31,2546 12362 TCF NEWPHASE 033540,000221: 033541,000222: # ****************************************************************** 033542,000223: # ROUTINES TO START NEW PHASES 033543,000224: # ****************************************************************** 033544,000225: 033545,000226: 31,2547 05311 P65START TC NEWMODEX 033546,000227: 31,2550 00101 DEC 65 B-14 033547,000228: 31,2551 34755 CAF ZERO 033548,000229: 31,2552 55647 TS WCHVERT 033549,000230: 31,2553 05516 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE 033550,000231: 31,2554 00311 ADRES XOVINFLG 033551,000232: 31,2555 12573 TCF TTFINCR 033552,000233: 033553,000234: 31,2556 05311 STARTP64 TC NEWMODEX 033554,000235: 31,2557 00100 DEC 64 B-14 033555,000236: 31,2560 31425 CA DELTTFAP # AUGMENT TTF/8 033556,000237: 31,2561 27552 ADS TTF/8TMP 033557,000238: 31,2562 00004 INHINT 033558,000239: 31,2563 06022 TC C13STALL 033559,000240: 31,2564 34740 CA BIT12 # ENABLE RUPT10 033560,000241: 31,2565 00006 EXTEND 033561,000242: 31,2566 05013 WOR CHAN13 033562,000243: 31,2567 33707 CAF P64DB 033563,000244: 31,2570 55343 TS DB 033564,000245: 31,2571 05516 TC DOWNFLAG # INITIALIZE REDESIGNATION FLAG 033565,000246: 31,2572 00143 ADRES REDFLAG 033566,000247: 033567,000248: # (CONTINUE TO TTFINCR) 033568,000249: 033569,000250: # ********************************************************************************* 033570,000251: # INCREMENT TTF/8, UPDATE LAND FOR LUNAR ROTATION, DO OTHER USEFUL THINGS 033571,000252: # ********************************************************************************* 033572,000253: 033573,000254: # TTFINCR COMPUTATIONS ARE AS FOLLOWS -- 033574,000255: # TTF/8 UPDATED FOR TIME SINCE LAST PASS: 033575,000256: # TTF/8 = TTF/8 + (TPIP - TPIPOLD)/8 033576,000257: # LANDING SITE VECTOR UPDATED FOR LUNAR ROTATION: 033577,000258: # Page 803 033578,000259: # ____ ____ ____ __ 033579,000260: # LAND = /LAND/ UNIT(LAND - LAND(TPIP - TPIPOLD) * WM) 033580,000261: # SLANT RANGE TO LANDING SITE, FOR DISPLAY: 033581,000262: # ____ _ 033582,000263: # RANGEDSP = ABVAL(LAND - R) 033583,000264: 033584,000265: 31,2573 06042 TTFINCR TC INTPRET 033585,000266: 31,2574 45345 DLOAD DSU 033586,000267: 31,2575 03625 TPIP 033587,000268: 31,2576 03574 TPIPOLD 033588,000269: 31,2577 41461 SLR PUSH # SHIFT SCALES DELTA TIME TO 2(17) CSECS 033589,000270: 31,2600 21214 11D 033590,000271: 31,2601 47361 VXSC VXV 033591,000272: 31,2602 03635 LAND 033592,000273: 31,2603 02325 WM 033593,000274: 31,2604 47045 BVSU RTB 033594,000275: 31,2605 03635 LAND 033595,000276: 31,2606 21727 NORMUNIT 033596,000277: 31,2607 76561 VXSC VSL1 033597,000278: 31,2610 02333 /LAND/ 033598,000279: 31,2611 17545 STODL LANDTEMP 033599,000280: 31,2612 77776 EXIT 033600,000281: 033601,000282: 31,2613 52155 DXCH MPAC 033602,000283: 31,2614 21553 DAS TTF/8TMP # NOW HAVE INCREMENTED TTF/8 IN TTF/8TMP 033603,000284: 033604,000285: 31,2615 03677 TC FASTCHNG 033605,000286: 033606,000287: 31,2616 00006 EXTEND 033607,000288: 31,2617 31553 DCA TTF/8TMP 033608,000289: 31,2620 53643 DXCH TTF/8 033609,000290: 033610,000291: 31,2621 03643 TC TDISPSET 033611,000292: 033612,000293: 31,2622 37721 CAF PRIO31 # TEMPORARILY OVER-PRIO CHARIN 033613,000294: 31,2623 05146 TC PRIOCHNG 033614,000295: 033615,000296: 31,2624 06042 TC INTPRET 033616,000297: 31,2625 53375 VLOAD VAD # ADD IN CORRECTION FROM NOUN 69 033617,000298: 31,2626 03545 LANDTEMP 033618,000299: 31,2627 02635 DLAND 033619,000300: 31,2630 03635 STORE LAND 033620,000301: 31,2631 77646 ABVAL # RECOMPUTE /LAND/ 033621,000302: 31,2632 02333 STORE /LAND/ 033622,000303: 31,2633 77776 EXIT 033623,000304: 033624,000305: 31,2634 03677 TC FASTCHNG # SINCE REDESIG MAY CHANGE LANDTEMP 033625,000306: # Page 804 033626,000307: 31,2635 35014 CAF EBANK5 033627,000308: 31,2636 E5,1634 EBANK= DLAND 033628,000309: 31,2636 54003 TS EBANK 033629,000310: 31,2637 34755 CAF ZERO # ZERO N 69 REGISTERS 033630,000311: 31,2640 55634 TS DLAND 033631,000312: 31,2641 55635 TS DLAND +1 033632,000313: 31,2642 55636 TS DLAND +2 033633,000314: 31,2643 55637 TS DLAND +3 033634,000315: 31,2644 55640 TS DLAND +4 033635,000316: 31,2645 55641 TS DLAND +5 033636,000317: 31,2646 35016 CAF EBANK7 033637,000318: 31,2647 E7,1666 EBANK= TREDES 033638,000319: 31,2647 54003 TS EBANK 033639,000320: 033640,000321: 31,2650 34736 CAF PRIO20 033641,000322: 31,2651 05146 TC PRIOCHNG 033642,000323: 033643,000324: 31,2652 51346 BRSPOT2 INDEX WCHPHASE 033644,000325: 31,2653 12366 TCF PREGUIDE 033645,000326: 033646,000327: # ********************************************************************* 033647,000328: # LANDING SITE PERTURBATION EQUATIONS 033648,000329: # ********************************************************************* 033649,000330: 033650,000331: 31,2654 30102 REDESIG CA FLAGWRD6 # IS REDFLAG SET? 033651,000332: 31,2655 74746 MASK REDFLBIT 033652,000333: 31,2656 00006 EXTEND 033653,000334: 31,2657 12763 BZF RGVGCALC # NO: SKIP REDESIGNATION LOGIC 033654,000335: 033655,000336: 31,2660 31666 CA TREDES # YES: HAS TREDES READED ZERO? 033656,000337: 31,2661 00006 EXTEND 033657,000338: 31,2662 12763 BZF RGVGCALC # YES: SKIP REDESIGNATION LOGIC 033658,000339: 033659,000340: 31,2663 00004 INHINT 033660,000341: 31,2664 31446 CA ELINCR1 033661,000342: 31,2665 55554 TS ELINCR 033662,000343: 31,2666 31445 CA AZINCR1 033663,000344: 31,2667 55556 TS AZINCR 033664,000345: 31,2670 03677 TC FASTCHNG 033665,000346: 033666,000347: 31,2671 34755 CA ZERO 033667,000348: 31,2672 55446 TS ELINCR1 033668,000349: 31,2673 55445 TS AZINCR1 033669,000350: 31,2674 55555 TS ELINCR +1 033670,000351: 31,2675 55557 TS AZINCR +1 033671,000352: 033672,000353: 31,2676 30120 CA FIXLOC # SET PD TO 0 033673,000354: 31,2677 54166 TS PUSHLOC 033674,000355: 033675,000356: 31,2700 06042 TC INTPRET 033676,000357: # Page 805 033677,000358: 31,2701 52375 VLOAD VSU 033678,000359: 31,2702 03635 LAND 033679,000360: 31,2703 03521 R # ____ _ 033680,000361: 31,2704 41434 RTB PUSH # PUSH DOWN UNIT (LAND - R) 033681,000362: 31,2705 21727 NORMUNIT 033682,000363: 31,2706 76435 VXV VSL1 033683,000364: 31,2707 02154 YNBPIP # ___ ____ _ 033684,000365: 31,2710 65361 VXSC PDDL # PUSH DOWN - ELINCR(YNB * UNIT(LAND - R)) 033685,000366: 31,2711 03555 ELINCR 033686,000367: 31,2712 03557 AZINCR 033687,000368: 31,2713 52361 VXSC VSU 033688,000369: 31,2714 02154 YNBPIP 033689,000370: 31,2715 41455 VAD PUSH # RESULTING VECTOR IS 1/2 REAL SIZE 033690,000371: 033691,000372: 31,2716 45345 DLOAD DSU # MAKE SURE REDESIGNATION IS NOT 033692,000373: 31,2717 00001 0 # TOO CLOSE TO THE HORIZON. 033693,000374: 31,2720 05660 DEPRCRIT 033694,000375: 31,2721 71240 BMN DLOAD 033695,000376: 31,2722 62725 REDES1 033696,000377: 31,2723 05660 DEPRCRIT 033697,000378: 31,2724 00001 STORE 0 033698,000379: 31,2725 45345 REDES1 DLOAD DSU 033699,000380: 31,2726 03635 LAND 033700,000381: 31,2727 03521 R 033701,000382: 31,2730 74271 DDV VXSC 033702,000383: 31,2731 00001 0 033703,000384: 31,2732 53455 VAD UNIT 033704,000385: 31,2733 03521 R 033705,000386: 31,2734 76561 VXSC VSL1 033706,000387: 31,2735 02333 /LAND/ 033707,000388: 31,2736 03545 STORE LANDTEMP 033708,000389: 31,2737 77776 EXIT # LOOKANGL WILL BE COMPUTED AT RGVGCALC 033709,000390: 033710,000391: 31,2740 03677 TC FASTCHNG 033711,000392: 033712,000393: 31,2741 00006 EXTEND 033713,000394: 31,2742 31545 DCA LANDTEMP 033714,000395: 31,2743 53635 DXCH LAND 033715,000396: 31,2744 00006 EXTEND 033716,000397: 31,2745 31547 DCA LANDTEMP +2 033717,000398: 31,2746 53637 DXCH LAND +2 033718,000399: 31,2747 00006 EXTEND 033719,000400: 31,2750 31551 DCA LANDTEMP +4 033720,000401: 31,2751 53641 DXCH LAND +4 033721,000402: 033722,000403: 31,2752 12763 TCF RGVGCALC 033723,000404: 033724,000405: # ********************************************************************* 033725,000406: # COMPUTE STATE IN GUIDANCE COORDINATES 033726,000407: # ********************************************************************* 033727,000408: # Page 806 033728,000409: 033729,000410: # RGVGCALC COMPUTATIONS ARE AS FOLLOWS: 033730,000411: # _______ _ _ __ 033731,000412: # ANGTERM = V + R * WM 033732,000413: # STATE IN GUIDANCE COORDINTES: 033733,000414: # ___ * _ ____ 033734,000415: # RGU = CG (R - LAND) 033735,000416: # ___ * _ __ _ 033736,000417: # VGU = CG (V - WM * R) 033737,000418: # DEPRESSION ANGLE FOR DISPLAY: 033738,000419: # _ ____ ______ 033739,000420: # LOOKANGL = ARCSIN(UNIT(R - LAND).XMBPIP) 033740,000421: 033741,000422: 31,2753 06042 CALCRGVG TC INTPRET # IN IGNALG, COMPUTE V FROM INTEGRATION 033742,000423: 31,2754 64375 VLOAD MXV # OUTPUT AND TRIM CORRECTION TERM 033743,000424: 31,2755 00025 VATT1 # COMPUTED LAST PASS AND LEFT IN UNFC/2 033744,000425: 31,2756 01734 REFSMMAT 033745,000426: 31,2757 53362 VSR1 VAD 033746,000427: 31,2760 03253 UNFC/2 033747,000428: 31,2761 03527 STORE V 033748,000429: 31,2762 77776 EXIT 033749,000430: 033750,000431: 31,2763 06042 RGVGCALC TC INTPRET # ENTER HERE TO RECOMPUTE RG AND VG 033751,000432: 31,2764 47375 VLOAD VXV 033752,000433: 31,2765 03521 R 033753,000434: 31,2766 02325 WM 033754,000435: 31,2767 70455 VAD VSR2 # RESCALE TO UNITS OF 2(9) M/CS 033755,000436: 31,2770 03527 V 033756,000437: 31,2771 02265 STORE ANGTERM 033757,000438: 31,2772 77721 MXV 033758,000439: 31,2773 02575 CG # NO SHIFT SINCE ANGTERM IS DOUBLE SIZED 033759,000440: 31,2774 27627 STOVL VGU 033760,000441: 31,2775 03521 R # _ ____ 033761,000442: 31,2776 41451 VSU PUSH # PUSH DOWN R - LAND 033762,000443: 31,2777 03635 LAND 033763,000444: 31,3000 76521 MXV VSL1 033764,000445: 31,3001 02575 CG 033765,000446: 31,3002 02627 STORE RGU 033766,000447: 31,3003 77646 ABVAL 033767,000448: 31,3004 26617 STOVL RANGEDSP 033768,000449: 31,3005 50234 RTB DOT # NOW IN MPAC IS SINE(LOOKANGL)/4 033769,000450: 31,3006 21727 NORMUNIT 033770,000451: 31,3007 02146 XNBPIP 033771,000452: # Page 807 033772,000453: 31,3010 77776 EXIT 033773,000454: 033774,000455: 31,3011 30120 CA FIXLOC # RESET PUSH DOWN POINTER 033775,000456: 31,3012 54166 TS PUSHLOC 033776,000457: 033777,000458: 31,3013 30154 CA MPAC # COMPUTE LOOKANGLE ITSELF 033778,000459: 31,3014 60000 DOUBLE 033779,000460: 31,3015 04616 TC BANKCALL 033780,000461: 31,3016 61663 CADR SPARCSIN -1 033781,000462: 31,3017 63713 AD 1/2DEG 033782,000463: 31,3020 61356 AD ELBIAS # BIAS LPD ANGLE FOR WINDOW BENDING 033783,000464: 31,3021 00006 EXTEND 033784,000465: 31,3022 73712 MP 180DEGS 033785,000466: 31,3023 55667 TS LOOKANGL # LOOKANGL FOR DISPLAY DURING P64 033786,000467: 033787,000468: 31,3024 51346 BRSPOT3 INDEX WCHPHASE 033788,000469: 31,3025 12372 TCF WHATGUID 033789,000470: 033790,000471: # ************************************************************************** 033791,000472: # TTF/8 COMPUTATION 033792,000473: # ************************************************************************** 033793,000474: 033794,000475: 31,3026 03636 TTF/8CL TC INTPRETX 033795,000476: 31,3027 77743 DLOAD* 033796,000477: 31,3030 02431 JDG2TTF,1 033797,000478: 31,3031 23571 STODL* TABLTTF +6 # A(3) = 8 JDG TO TABLTTF 033798,000479: 31,3032 02427 ADG2TTF,1 # 2 033799,000480: 31,3033 17567 STODL TABLTTF +4 # A(2) = 6 ADG TO TABLTTF 033800,000481: 31,3034 03633 VGU +4 # 2 033801,000482: 31,3035 42605 DMP DAD* 033802,000483: 31,3036 05656 3/4DP 033803,000484: 31,3037 02425 VDG2TTF,1 033804,000485: 31,3040 23565 STODL* TABLTTF +2 # A(1) = (6 VGU + 18 VDG )/8 TO TABLTTF 033805,000486: 31,3041 02407 RDG +4,1 # 2 2 033806,000487: 31,3042 41225 DSU DMP 033807,000488: 31,3043 02633 RGU +4 033808,000489: 31,3044 05654 3/8DP 033809,000490: 31,3045 03563 STORE TABLTTF # A(0) = -24 (RGU - RDG )/64 TO TABLTTF 033810,000491: 31,3046 77776 EXIT # 2 2 033811,000492: 033812,000493: 31,3047 34744 CA BIT8 033813,000494: 31,3050 55572 TS TABLTTF +10 # FRACTIONAL PRECISION FOR TTF TO TABLE 033814,000495: 033815,000496: 31,3051 00006 EXTEND 033816,000497: 31,3052 31643 DCA TTF/8 033817,000498: 31,3053 52155 DXCH MPAC # LOADS TTF/8 (INITIAL GUESS) INTO MPAC 033818,000499: 31,3054 34752 CAF TWO # DEGREE - ONE 033819,000500: 31,3055 54001 TS L 033820,000501: 31,3056 33705 CAF TABLTTFL 033821,000502: 31,3057 03512 TC ROOTPSRS # YIELDS TTF/8 IN MPAC 033822,000503: # Page 808 033823,000504: 31,3060 51346 INDEX WCHPHASE 033824,000505: 31,3061 12410 TCF WHATALM 033825,000506: 033826,000507: 31,3062 00006 EXTEND # GOOD RETURN 033827,000508: 31,3063 30155 DCA MPAC # FETCH TTF/8 KEEPING IT IN MPAC 033828,000509: 31,3064 53643 DXCH TTF/8 # CORRECTED TTF/8 033829,000510: 033830,000511: 31,3065 03643 TC TDISPSET 033831,000512: 033832,000513: # (CONTINUE TO QUADGUID) 033833,000514: 033834,000515: # ********************************************************************************* 033835,000516: # MAIN GUIDANCE EQUATION 033836,000517: # ********************************************************************************* 033837,000518: 033838,000519: # AS PUBLISHED -- 033839,000520: # ___ __ ___ __ 033840,000521: # ___ ___ 6(VDG + VG) 12(RDG - RG) 033841,000522: # ACG = ADG + ----------- + ------------ 033842,000523: # TTF (TTF)(TTF) 033843,000524: # AS HERE PROGRAMMED -- 033844,000525: # ___ __ 033845,000526: # 3 (1/4(RDG - RG) ___ __) 033846,000527: # - (------------- + VDG + VG) 033847,000528: # ___ 4 ( TTF/8 ) ___ 033848,000529: # ACG = ---------------------------- + ADG 033849,000530: # TTF/8 033850,000531: 033851,000532: 31,3066 41642 QUADGUID CS TTF/8 033852,000533: 31,3067 61426 AD LEADTIME # LEADTIME IS A NEGATIVE NUMBER 033853,000534: 31,3070 64733 AD POSMAX # SAFEGUARD THE COMPUTATIONS THAT FOLLOW 033854,000535: 31,3071 54001 TS L # BY FORCING -TTF*LEADTIME (garbled) OR - ZERO 033855,000536: 31,3072 40001 CS L 033856,000537: 31,3073 60001 AD L 033857,000538: 31,3074 22007 ZL 033858,000539: 31,3075 00006 EXTEND 033859,000540: 31,3076 11642 DV TTF/8 033860,000541: 31,3077 54130 TS BUF # - RATIO OF LAG-DIMINISHED TTF TO TTF 033861,000542: 31,3100 00006 EXTEND 033862,000543: 31,3101 70000 SQUARE 033863,000544: 31,3102 54131 TS BUF +1 033864,000545: 31,3103 60130 AD BUF 033865,000546: 31,3104 56131 XCH BUF +1 # RATIO SQUARED - RATIO 033866,000547: 31,3105 60131 AD BUF +1 033867,000548: 31,3106 54154 TS MPAC # COEFFICIENT FOR VGU TERM 033868,000549: 31,3107 60131 AD BUF +1 033869,000550: # Page 809 033870,000551: 31,3110 50120 INDEX FIXLOC 033871,000552: 31,3111 54032 TS 26D # COEFFICIENT FOR RDG-RGU TERM 033872,000553: 31,3112 60131 AD BUF +1 033873,000554: 31,3113 50120 INDEX FIXLOC 033874,000555: 31,3114 54034 TS 28D # COEFFICIENT FOR VDG TERM 033875,000556: 31,3115 60130 AD BUF 033876,000557: 31,3116 64733 AD POSMAX 033877,000558: 31,3117 60131 AD BUF +1 033878,000559: 31,3120 60131 AD BUF +1 033879,000560: 31,3121 50120 INDEX FIXLOC 033880,000561: 31,3122 54036 TS 30D # COEFFICIENT FOR ADG TERM 033881,000562: 033882,000563: 31,3123 34755 CAF ZERO 033883,000564: 31,3124 54163 TS MODE 033884,000565: 033885,000566: 31,3125 03636 TC INTPRETX 033886,000567: 31,3126 65361 VXSC PDDL 033887,000568: 31,3127 03627 VGU 033888,000569: 31,3130 00035 28D 033889,000570: 31,3131 62757 VXSC* PDVL* 033890,000571: 31,3132 02411 VDG,1 033891,000572: 31,3133 02403 RDG,1 033892,000573: 31,3134 70251 VSU V/SC 033893,000574: 31,3135 02627 RGU 033894,000575: 31,3136 03643 TTF/8 033895,000576: 31,3137 74342 VSR2 VXSC 033896,000577: 31,3140 00033 26D 033897,000578: 31,3141 53255 VAD VAD 033898,000579: 31,3142 74341 V/SC VXSC 033899,000580: 31,3143 03643 TTF/8 033900,000581: 31,3144 05656 3/4DP 033901,000582: 31,3145 73725 PDDL VXSC* 033902,000583: 31,3146 00037 30D 033903,000584: 31,3147 02417 ADG,1 033904,000585: 31,3150 77655 VAD 033905,000586: 31,3151 76505 AFCCALC1 VXM VSL1 # VERGUID COMES HERE 033906,000587: 31,3152 02575 CG 033907,000588: 31,3153 70315 PDVL V/SC 033908,000589: 31,3154 01236 GDT/2 033909,000590: 31,3155 05652 GSCALE 033910,000591: 31,3156 45445 BVSU STADR 033911,000592: 31,3157 74524 STORE UNFC/2 # UNFC/2 NEED NOT BE UNITIZED 033912,000593: 31,3160 77646 ABVAL 033913,000594: 31,3161 17464 AFCCALC2 STODL /AFC/ # MAGNITUDE OF AFC FOR THROTTLE 033914,000595: 31,3162 03253 UNFC/2 # VERTICAL COMPONENT 033915,000596: 31,3163 65316 DSQ PDDL 033916,000597: 31,3164 03255 UNFC/2 +2 # OUT-OF-PLANE 033917,000598: 31,3165 65316 DSQ PDDL 033918,000599: 31,3166 05650 HIGHESTF 033919,000600: 31,3167 63471 DDV DSQ 033920,000601: # Page 810 033921,000602: 31,3170 01244 MASS # 2 2 2 033922,000603: 31,3171 45225 DSU DSU # AMAXHORIZ = SQRT(ATOTAL - A A ) 033923,000604: 31,3172 71244 BPL DLOAD # 1 0 033924,000605: 31,3173 63175 AFCCALC3 033925,000606: 31,3174 06524 ZEROVECS 033926,000607: 31,3175 43366 AFCCALC3 SQRT DAD 033927,000608: 31,3176 03257 UNFC/2 +4 033928,000609: 31,3177 44244 BPL BDSU 033929,000610: 31,3200 63203 AFCCLEND 033930,000611: 31,3201 03257 UNFC/2 +4 033931,000612: 31,3202 03257 STORE UNFC/2 +4 033932,000613: 31,3203 77776 AFCCLEND EXIT 033933,000614: 31,3204 03677 TC FASTCHNG 033934,000615: 033935,000616: 31,3205 31346 CA WCHPHASE # PREPARE FOR PHASE SWITCHING LOGIC 033936,000617: 31,3206 55621 TS WCHPHOLD 033937,000618: 31,3207 25623 INCR FLPASS0 # INCREMENT PASS COUNTER 033938,000619: 033939,000620: 31,3210 51346 BRSPOT4 INDEX WCHPHASE 033940,000621: 31,3211 12376 TCF AFTRGUID 033941,000622: 033942,000623: # ***************************************************************************** 033943,000624: # NEW PHASE NOW? 033944,000625: # ***************************************************************************** 033945,000626: 033946,000627: 31,3212 51346 EXTLOGIC INDEX WCHPHASE # IS TTF NEARER ZERO THAN CRITERION? 033947,000628: 31,3213 31423 CA TENDBRAK 033948,000629: 31,3214 61642 AD TTF/8 033949,000630: 31,3215 00006 EXTEND 033950,000631: 31,3216 63225 BZMF CGCALC # NO 033951,000632: 033952,000633: 31,3217 03677 TC FASTCHNG # YES: INCREMENT WCHPHASE, ZERO FLPASS0 033953,000634: 033954,000635: 31,3220 31621 CA WCHPHOLD 033955,000636: 31,3221 64753 AD ONE 033956,000637: 31,3222 55346 TS WCHPHASE 033957,000638: 31,3223 34755 CAF ZERO 033958,000639: 31,3224 55623 TS FLPASS0 033959,000640: 033960,000641: # (CONTINUE TO CGCALC) 033961,000642: 033962,000643: # *********************************************************************** 033963,000644: # ERECT GUIDANCE-STABLE MEMBER TRANSFORMATION MATRIX 033964,000645: # *********************************************************************** 033965,000646: 033966,000647: 31,3225 35014 CGCALC CAF EBANK5 033967,000648: 31,3226 54003 TS EBANK 033968,000649: 31,3227 E5,1435 EBANK= TCGIBRAK 033969,000650: 31,3227 00006 EXTEND 033970,000651: 31,3230 51346 INDEX WCHPHASE 033971,000652: # Page 811 033972,000653: 31,3231 52413 INDEX TARGTDEX 033973,000654: 31,3232 31435 DCA TCGFBRAK 033974,000655: 31,3233 24006 INCR BBANK 033975,000656: 31,3234 24006 INCR BBANK 033976,000657: 31,3235 E7,1642 EBANK= TTF/8 033977,000658: 31,3235 61642 AD TTF/8 033978,000659: 31,3236 56001 XCH L 033979,000660: 31,3237 61642 AD TTF/8 033980,000661: 31,3240 10000 CCS A 033981,000662: 31,3241 10001 CCS L 033982,000663: 31,3242 13273 TCF EXITSPOT 033983,000664: 31,3243 13273 TCF EXITSPOT 033984,000665: 31,3244 13245 NOOP 033985,000666: 033986,000667: 31,3245 03636 TC INTPRETX 033987,000668: 31,3246 53575 VLOAD UNIT 033988,000669: 31,3247 03635 LAND 033989,000670: 31,3250 16575 STODL CG 033990,000671: 31,3251 03643 TTF/8 033991,000672: 31,3252 74203 DMP* VXSC 033992,000673: 31,3253 02433 GAINBRAK,1 # NUMERO MYSTERIOSO 033993,000674: 31,3254 02265 ANGTERM 033994,000675: 31,3255 77655 VAD 033995,000676: 31,3256 03635 LAND 033996,000677: 31,3257 47051 VSU RTB 033997,000678: 31,3260 03521 R 033998,000679: 31,3261 21727 NORMUNIT 033999,000680: 31,3262 47035 VXV RTB 034000,000681: 31,3263 03635 LAND 034001,000682: 31,3264 21727 NORMUNIT 034002,000683: 31,3265 26603 STOVL CG +6 # SECOND ROW 034003,000684: 31,3266 02575 CG 034004,000685: 31,3267 76435 VXV VSL1 034005,000686: 31,3270 02603 CG +6 034006,000687: 31,3271 02611 STORE CG +14 034007,000688: 31,3272 77776 EXIT 034008,000689: 034009,000690: 31,3273 51621 EXITSPOT INDEX WCHPHOLD 034010,000691: 31,3274 12402 TCF WHATEXIT 034011,000692: 034012,000693: # *********************************************************************** 034013,000694: # ROUTINES FOR EXITING FROM LANDING GUIDANCE 034014,000695: # *********************************************************************** 034015,000696: 034016,000697: # 1. EXGSUB IS THE RETURN WHEN GUIDSUB IS CALLED BY THE IGNITION ALGORITHM. 034017,000698: # 2. EXBRAK IN THE EXIT USED DURING THE BRAKING PHASE. IN THIS CASE UNIT(R) IS THE WINDOW POINTING VECTOR. 034018,000699: # 3. EXNORM IS THE EXIT USED AT OTHER TIMES DURING THE BURN. 034019,000700: # Page 812 034020,000701: # (EXOVFLOW IS A SUBROUTINE OF EXBRAK AND EXNORM CALLED WHEN OVERFLOW OCCURRED ANYWHERE IN GUIDANCE.) 034021,000702: 034022,000703: 31,3275 06042 EXGSUB TC INTPRET # COMPUTE TRIM VELOCITY CORRECTION TERM. 034023,000704: 31,3276 47175 VLOAD RTB 034024,000705: 31,3277 03253 UNFC/2 034025,000706: 31,3300 21727 NORMUNIT 034026,000707: 31,3301 74361 VXSC VXSC 034027,000708: 31,3302 03423 ZOOMTIME 034028,000709: 31,3303 22001 TRIMACCL 034029,000710: 31,3304 03253 STORE UNFC/2 034030,000711: 31,3305 77776 EXIT 034031,000712: 034032,000713: 31,3306 11647 CCS NGUIDSUB 034033,000714: 31,3307 12421 TCF GUIDSUB 034034,000715: 31,3310 11646 CCS NIGNLOOP 034035,000716: 31,3311 13314 TCF +3 034036,000717: 31,3312 05567 TC ALARM 034037,000718: 31,3313 01412 OCT 01412 034038,000719: 034039,000720: 31,3314 04635 +3 TC POSTJUMP 034040,000721: 31,3315 65104 CADR DDUMCALC 034041,000722: 034042,000723: 31,3316 06042 EXBRAK TC INTPRET 034043,000724: 31,3317 77775 VLOAD 034044,000725: 31,3320 03537 UNIT/R/ 034045,000726: 31,3321 03261 STORE UNWC/2 034046,000727: 31,3322 77776 EXIT 034047,000728: 31,3323 13400 TCF STEER? 034048,000729: 034049,000730: 31,3324 06042 EXNORM TC INTPRET 034050,000731: 31,3325 52375 VLOAD VSU 034051,000732: 31,3326 03635 LAND 034052,000733: 31,3327 03521 R 034053,000734: 31,3330 77634 RTB 034054,000735: 31,3331 21727 NORMUNIT 034055,000736: 31,3332 03261 STORE UNWC/2 # UNIT(LAND - R) IS TENTATIVE CHOICE 034056,000737: 31,3333 50235 VXV DOT 034057,000738: 31,3334 02146 XNBPIP 034058,000739: 31,3335 02603 CG +6 034059,000740: 31,3336 77776 EXIT # WITH PROJ IN MPAC 1/8 REAL SIZE 034060,000741: 034061,000742: 31,3337 40154 CS MPAC # GET COEFFICIENT FOR CG +14 034062,000743: 31,3340 63714 AD PROJMAX 034063,000744: 31,3341 64733 AD POSMAX 034064,000745: 31,3342 54130 TS BUF 034065,000746: 31,3343 40130 CS BUF 034066,000747: 31,3344 26130 ADS BUF # RESULT IS 0 IF PROJMAX - PROJ NEGATIVE 034067,000748: 034068,000749: 31,3345 43715 CS PROJMIN # GET COEFFICIENT FOR UNIT(LAND - R) 034069,000750: 31,3346 60154 AD MPAC 034070,000751: # Page 813 034071,000752: 31,3347 64733 AD POSMAX 034072,000753: 31,3350 54131 TS BUF +1 034073,000754: 31,3351 40131 CS BUF +1 034074,000755: 31,3352 26131 ADS BUF +1 # RESULT IS 0 IF PROJ - PROJMIN NEGATIVE 034075,000756: 034076,000757: 31,3353 34751 CAF FOUR 034077,000758: 31,3354 76245 UNWCLOOP MASK SIX 034078,000759: 31,3355 54002 TS Q 034079,000760: 31,3356 35014 CA EBANK5 034080,000761: 31,3357 54003 TS EBANK 034081,000762: 31,3360 E5,1574 EBANK= CG 034082,000763: 31,3360 30130 CA BUF 034083,000764: 31,3361 00006 EXTEND 034084,000765: 31,3362 50002 INDEX Q 034085,000766: 31,3363 71610 MP CG +14 034086,000767: 31,3364 24006 INCR BBANK 034087,000768: 31,3365 E6,1660 EBANK= UNWC/2 034088,000769: 31,3365 50002 INDEX Q 034089,000770: 31,3366 53661 DXCH UNWC/2 034090,000771: 31,3367 00006 EXTEND 034091,000772: 31,3370 70131 MP BUF +1 034092,000773: 31,3371 50002 INDEX Q 034093,000774: 31,3372 21661 DAS UNWC/2 034094,000775: 31,3373 10002 CCS Q 034095,000776: 31,3374 13354 TCF UNWCLOOP 034096,000777: 034097,000778: 31,3375 31773 CA AZBIAS # SET OUTER GIMBAL 034098,000779: 31,3376 55677 TS OGABIAS # ANGLE BIAS FOR WINDOW BENDING 034099,000780: 034100,000781: 31,3377 24006 INCR BBANK 034101,000782: 31,3400 E7,1612 EBANK= PIF 034102,000783: 034103,000784: 31,3400 30076 STEER? CA FLAGWRD2 # IF STEERSW DOWN NO OUTPUTS 034104,000785: 31,3401 74741 MASK STEERBIT 034105,000786: 31,3402 00006 EXTEND 034106,000787: 31,3403 13411 BZF RATESTOP 034107,000788: 034108,000789: 31,3404 30121 EXVERT CA OVFIND # IF OVERFLOW ANYWHERE IN GUIDANCE 034109,000790: 31,3405 00006 EXTEND # DON'T CALL THROTTLE OR FINDCDUW 034110,000791: 31,3406 13421 BZF +13 034111,000792: 034112,000793: 31,3407 05567 EXOVFLOW TC ALARM # SOUND THE ALARM NON-ABORTIVELY 034113,000794: 31,3410 01410 OCT 01410 034114,000795: 034115,000796: 31,3411 34737 RATESTOP CAF BIT13 # ARE WE IN ATTITUDE-HOLD? 034116,000797: 31,3412 00006 EXTEND 034117,000798: 31,3413 02031 RAND CHAN31 034118,000799: 31,3414 00006 EXTEND 034119,000800: 31,3415 13426 BZF DISPEXIT # YES 034120,000801: # Page 814 034121,000802: 31,3416 04616 TC BANKCALL # NO: DO A STOPRATE 034122,000803: 31,3417 40166 CADR STOPRATE 034123,000804: 034124,000805: 31,3420 13426 TCF DISPEXIT 034125,000806: 034126,000807: 31,3421 02144 GDLMP1 TC THROTTLE 034127,000808: 31,3422 06042 TC INTPRET 034128,000809: 31,3423 77624 CALL 034129,000810: 31,3424 61100 FINDCDUW -2 034130,000811: 31,3425 77776 EXIT 034131,000812: 034132,000813: # (CONTINUE TO DISPEXIT) 034133,000814: 034134,000815: # *********************************************************************** 034135,000816: # GUIDANCE LOOP DISPLAYS 034136,000817: # *********************************************************************** 034137,000818: 034138,000819: 31,3426 00006 DISPEXIT EXTEND # KILL GROUP 3: DISPLAYS WILL BE 034139,000820: 31,3427 34755 DCA NEG0 # RESTORED BY NEXT GUIDANCE CYCLE. 034140,000821: 31,3430 52756 DXCH -PHASE3 034141,000822: 034142,000823: 31,3431 31,3431 ENDLLJOB = DISPEXIT +3 034143,000824: 034144,000825: 31,3431 40104 +3 CS FLAGWRD8 # IF FLUNDISP IS SET, NO DISPLAY THIS PASS 034145,000826: 31,3432 74742 MASK FLUNDBIT 034146,000827: 31,3433 00006 EXTEND 034147,000828: 31,3434 15155 BZF ENDOFJOB 034148,000829: 034149,000830: 31,3435 51621 INDEX WCHPHOLD 034150,000831: 31,3436 12404 TCF WHATDISP 034151,000832: 034152,000833: 31,3437 33716 P63DISPS CAF V06N63 034153,000834: 31,3440 04616 DISPCOMN TC BANKCALL 034154,000835: 31,3441 20466 CADR REGODSP 034155,000836: 034156,000837: 31,3442 31666 P64DISPS CA TREDES # HAS TREDES REACHED ZERO? 034157,000838: 31,3443 00006 EXTEND 034158,000839: 31,3444 13465 BZF RED-OVER # YES: CLEAR REDESIGNATION FLAG 034159,000840: 034160,000841: 31,3445 40102 CS FLAGWRD6 # NO: IS REDFLAG SET? 034161,000842: 31,3446 74746 MASK REDFLBIT 034162,000843: 31,3447 00006 EXTEND 034163,000844: 31,3450 13467 BZF REDES-OK # YES: DO STATIC DISPLAY 034164,000845: 034165,000846: 31,3451 33717 CAF V06N64 # OTHERWISE USE FLASHING DISPLAY 034166,000847: 31,3452 04616 TC BANKCALL 034167,000848: 31,3453 20460 CADR REFLASH 034168,000849: 31,3454 16001 TCF GOTOP00H # TERMINATE 034169,000850: # Page 815 034170,000851: 31,3455 13457 TCF P64CEED # PROCEED PERMIT REDESIGNATIONS 034171,000852: 31,3456 13442 TCF P64DISPS # RECYCLE 034172,000853: 034173,000854: 31,3457 34755 P64CEED CAF ZERO 034174,000855: 31,3460 55446 TS ELINCR1 034175,000856: 31,3461 55445 TS AZINCR1 034176,000857: 034177,000858: 31,3462 05504 TC UPFLAG # ENABLE REDESIGNATION LOGIC 034178,000859: 31,3463 00143 ADRES REDFLAG 034179,000860: 034180,000861: 31,3464 15155 TCF ENDOFJOB 034181,000862: 034182,000863: 31,3465 05516 RED-OVER TC DOWNFLAG 034183,000864: 31,3466 00143 ADRES REDFLAG 034184,000865: 31,3467 33717 REDES-OK CAF V06N64 034185,000866: 31,3470 13440 TCF DISPCOMN 034186,000867: 034187,000868: 31,3471 33720 VERTDISP CAF V06N60 034188,000869: 31,3472 04616 TC BANKCALL 034189,000870: 31,3473 20460 CADR REFLASH 034190,000871: 31,3474 16001 TCF GOTOP00H # TERMINATE 034191,000872: 31,3475 13477 TCF STOPFIRE # PROCEED 034192,000873: 31,3476 13477 TCF STOPFIRE # V32E 034193,000874: 034194,000875: 31,3477 00004 STOPFIRE INHINT 034195,000876: 31,3500 04616 TC BANKCALL 034196,000877: 31,3501 40154 CADR ZATTEROR 034197,000878: 31,3502 15155 TCF ENDOFJOB 034198,000879: 034199,000880: # ************************************************************************** 034200,000881: # GUIDANCE FOR P65 034201,000882: # ************************************************************************** 034202,000883: 034203,000884: 31,3503 11647 VERTGUID CCS WCHVERT 034204,000885: 31,3504 13510 TCF P66VERT # +0 034205,000886: 034206,000887: 034207,000888: # THE P65 GUIDANCE EQUATION IS AS FOLLOWS -- 034208,000889: # ____ ___ 034209,000890: # V2FG - VGU 034210,000891: # ACG = ---------- 034211,000892: # TAUVERT 034212,000893: 034213,000894: 31,3505 06042 P65VERT TC INTPRET 034214,000895: 31,3506 77650 GOTO 034215,000896: 31,3507 65272 P65VERTA 034216,000897: # Page 816 034217,000898: 034218,000899: # ********************************************************** 034219,000900: # GUIDANCE FOR P66 034220,000901: # ********************************************************** 034221,000902: 034222,000903: 31,3510 04635 P66VERT TC POSTJUMP 034223,000904: 31,3511 65300 CADR P66VERTA 034224,000905: 034225,000906: 32,2000 SETLOC P66LOC 034226,000907: 32,2000 BANK 034227,000908: 32,3265 COUNT* $$/F2DPS 034228,000909: 034229,000910: 32,3265 37713 RODTASK CAF PRIO22 034230,000911: 32,3266 05105 TC FINDVAC 034231,000912: 32,3267 E7,1515 EBANK= DVCNTR 034232,000913: 32,3267 03305 64067 2CADR RODCOMP 034233,000914: 034234,000915: 32,3271 15261 TCF TASKOVER 034235,000916: 034236,000917: 32,3272 52375 P65VERTA VLOAD VSU 034237,000918: 32,3273 02511 V2FG 034238,000919: 32,3274 03627 VGU 034239,000920: 32,3275 52141 V/SC GOTO 034240,000921: 32,3276 02517 TAUVERT 034241,000922: 32,3277 63151 AFCCALC1 034242,000923: 034243,000924: 32,3300 05353 P66VERTA TC PHASCHNG # TERMINATE GROUP 3. 034244,000925: 32,3301 00003 OCT 00003 034245,000926: 034246,000927: 32,3302 34777 CAF 1SEC 034247,000928: 32,3303 05173 TC TWIDDLE 034248,000929: 32,3304 03265 ADRES RODTASK 034249,000930: 034250,000931: 32,3305 00004 RODCOMP INHINT 034251,000932: 32,3306 34755 CAF ZERO 034252,000933: 32,3307 57746 XCH RODCOUNT 034253,000934: 32,3310 00006 EXTEND 034254,000935: 32,3311 71756 MP RODSCAL1 034255,000936: 32,3312 21645 DAS VDGVERT # UPDATE DESIRED ALTITUDE RATE. 034256,000937: 034257,000938: 32,3313 00006 EXTEND # SET OLDPIPAX,Y,Z = PIPAX,Y,Z 034258,000939: 32,3314 30040 DCA PIPAX 034259,000940: 32,3315 53764 DXCH OLDPIPAX 034260,000941: 32,3316 52071 DXCH RUPTREG1 # SET RUPTREG1,2,3 = OLDPIPAX,Y,Z 034261,000942: 32,3317 30041 CA PIPAZ 034262,000943: 32,3320 57765 XCH OLDPIPAZ 034263,000944: 32,3321 56072 XCH RUPTREG3 034264,000945: 034265,000946: 32,3322 00006 EXTEND # SHAPSHOT TIME OF PIPA READING. 034266,000947: 32,3323 30025 DCA TIME2 034267,000948: 32,3324 53762 DXCH THISTPIP 034268,000949: # Page 817 034269,000950: 32,3325 31763 CA OLDPIPAX 034270,000951: 32,3326 61157 AD PIPATMPX 034271,000952: 32,3327 54154 TS MPAC # MPAC(X) = PIPAX + PIPATMPX 034272,000953: 32,3330 31764 CA OLDPIPAY 034273,000954: 32,3331 61160 AD PIPATMPY 034274,000955: 32,3332 54157 TS MPAC +3 # MPAC(Y) = PIPAY + PIPATMPY 034275,000956: 32,3333 31765 CA OLDPIPAZ 034276,000957: 32,3334 61161 AD PIPATMPZ 034277,000958: 32,3335 54161 TS MPAC +5 # MPAC(Z) = PIPAZ + PIPATMPZ 034278,000959: 034279,000960: 32,3336 41763 CS OLDPIPAX 034280,000961: 32,3337 61253 AD TEMX 034281,000962: 32,3340 60070 AD RUPTREG1 034282,000963: 32,3341 55766 TS DELVROD 034283,000964: 32,3342 41764 CS OLDPIPAY 034284,000965: 32,3343 61254 AD TEMY 034285,000966: 32,3344 60071 AD RUPTREG2 034286,000967: 32,3345 55770 TS DELVROD +2 034287,000968: 32,3346 41765 CS OLDPIPAZ 034288,000969: 32,3347 61255 AD TEMZ 034289,000970: 32,3350 60072 AD RUPTREG3 034290,000971: 32,3351 55772 TS DELVROD +4 034291,000972: 034292,000973: 32,3352 34755 CAF ZERO 034293,000974: 32,3353 54155 TS MPAC +1 # ZERO LO-ORDER MPAC COMPONENTS 034294,000975: 32,3354 54160 TS MPAC +4 034295,000976: 32,3355 54162 TS MPAC +6 034296,000977: 32,3356 55253 TS TEMX # ZERO TEMX, TEMY, AND TEMZ SO WE WILL 034297,000978: 32,3357 55254 TS TEMY # KNOW WHEN READACCS CHANGES THEM. 034298,000979: 32,3360 55255 TS TEMZ 034299,000980: 32,3361 44753 CS ONE 034300,000981: 32,3362 54163 TS MODE 034301,000982: 32,3363 06042 TC INTPRET 034302,000983: 32,3364 65361 ITRPNT1 VXSC PDDL # SCALE MPAC TO M/CS *2(-7) AND PUSH (6) 034303,000984: 32,3365 26022 KPIP1 034304,000985: 32,3366 03762 THISTPIP 034305,000986: 32,3367 77625 DSU 034306,000987: 32,3370 01234 PIPTIME 034307,000988: 32,3371 00037 STORE 30D # 30-31D CONTAINS TIME IN CS SINCE PIPTIME 034308,000989: 32,3372 63271 DDV PDVL # (8) 034309,000990: 32,3373 27110 4SEC(28) 034310,000991: 32,3374 01236 GDT/2 034311,000992: 32,3375 74251 VSU VXSC # (6) 034312,000993: 32,3376 02621 VBIAS 034313,000994: 32,3377 53352 VSL2 VAD 034314,000995: 32,3400 03527 V 034315,000996: 32,3401 45455 VAD STADR # (0) 034316,000997: 32,3402 53746 STOVL 24D # STORE UPDATED VELOCITY IN 24-29D 034317,000998: 32,3403 03521 R 034318,000999: 32,3404 77656 UNIT 034319,001000: # Page 818 034320,001001: 32,3405 00017 STORE 14D 034321,001002: 32,3406 72441 DOT SL1 034322,001003: 32,3407 00031 24D 034323,001004: 32,3410 17474 STODL HDOTDISP # UPDATE ALTITUDE RATE FOR NOUN 60 034324,001005: 32,3411 00037 30D 034325,001006: 32,3412 41261 SL DMP 034326,001007: 32,3413 20214 11D 034327,001008: 32,3414 03474 HDOTDISP 034328,001009: 32,3415 45215 DAD DSU 034329,001010: 32,3416 00045 36D 034330,001011: 32,3417 02333 /LAND/ 034331,001012: 32,3420 17775 STODL HCALC1 # UPDATE ALTITUDE FOR NOUN 60 034332,001013: 32,3421 03474 HDOTDISP 034333,001014: 32,3422 56221 BDSU DDV 034334,001015: 32,3423 03645 VDGVERT 034335,001016: 32,3424 02541 TAUROD 034336,001017: 32,3425 51515 PDVL ABVAL # (2) 034337,001018: 32,3426 01236 GDT/2 034338,001019: 32,3427 60471 DDV SR2 034339,001020: 32,3430 05652 GSCALE 034340,001021: 32,3431 00025 STORE 20D 034341,001022: 32,3432 77615 DAD # (0) 034342,001023: 32,3433 45115 PDVL CALL # (2) 034343,001024: 32,3434 06522 UNITX 034344,001025: 32,3435 47663 CDU*NBSM 034345,001026: 32,3436 77641 DOT 034346,001027: 32,3437 00017 14D 034347,001028: 32,3440 00027 STORE 22D 034348,001029: 32,3441 45465 BDDV STADR # (0) 034349,001030: 32,3442 50313 STOVL /AFC/ 034350,001031: 32,3443 03767 DELVROD 034351,001032: 32,3444 53361 VXSC VAD 034352,001033: 32,3445 26022 KPIP1 034353,001034: 32,3446 02621 VBIAS 034354,001035: 32,3447 65246 ABVAL PDDL # (2) 034355,001036: 32,3450 03762 THISTPIP 034356,001037: 32,3451 65225 DSU PDDL # (4) 034357,001038: 32,3452 03760 LASTTPIP 034358,001039: 32,3453 03762 THISTPIP 034359,001040: 32,3454 17760 STODL LASTTPIP # (2) 034360,001041: 32,3455 55271 DDV BDDV # (0) 034361,001042: 32,3456 25530 SHFTFACT 034362,001043: 32,3457 41325 PDDL DMP # (2) 034363,001044: 32,3460 03611 FWEIGHT 034364,001045: 32,3461 25527 BIT1H 034365,001046: 32,3462 56271 DDV DDV 034366,001047: 32,3463 01244 MASS 034367,001048: 32,3464 22006 SCALEFAC 034368,001049: 32,3465 65215 DAD PDDL # (4) 034369,001050: 32,3466 00001 0D 034370,001051: # Page 819 034371,001052: 32,3467 00025 20D 034372,001053: 32,3470 45271 DDV DSU # (2) 034373,001054: 32,3471 00027 22D 034374,001055: 32,3472 43205 DMP DAD 034375,001056: 32,3473 02543 LAG/TAU 034376,001057: 32,3474 03464 /AFC/ 034377,001058: 32,3475 56325 PDDL DDV # (4) 034378,001059: 32,3476 02547 MAXFORCE 034379,001060: 32,3477 01244 MASS 034380,001061: 32,3500 56325 PDDL DDV # (6) 034381,001062: 32,3501 02545 MINFORCE 034382,001063: 32,3502 01244 MASS 034383,001064: 32,3503 44206 PUSH BDSU # (8) 034384,001065: 32,3504 00003 2D 034385,001066: 32,3505 71240 BMN DLOAD # (6) 034386,001067: 32,3506 65514 AFCSPOT 034387,001068: 32,3507 41545 DLOAD PUSH # (6) 034388,001069: 32,3510 51021 BDSU BPL 034389,001070: 32,3511 00003 2D 034390,001071: 32,3512 65514 AFCSPOT 034391,001072: 32,3513 77745 DLOAD # (4) 034392,001073: 32,3514 77745 AFCSPOT DLOAD # (2), (4), OR (6) 034393,001074: 32,3515 77601 SETPD # (2) 034394,001075: 32,3516 00003 2D 034395,001076: 32,3517 17464 STODL /AFC/ # (0) 034396,001077: 32,3520 77776 ITRPNT2 EXIT 034397,001078: 32,3521 52155 DXCH MPAC # MPAC = MEASURED COORDINATES 034398,001079: 32,3522 04616 TC BANKCALL 034399,001080: 32,3523 62147 CADR THROTTLE +3 034400,001081: 32,3524 04616 TC BANKCALL # PUT UP V06N60 DISPLAY BUT AVOID PHASCHNG 034401,001082: 32,3525 63431 CADR DISPEXIT +3 034402,001083: 034403,001084: 32,3526 00001 BIT1H OCT 00001 034404,001085: 32,3527 00000 04000 SHFTFACT 2DEC 1 B-17 034405,001086: 32,3531 00000 05075 BIASFACT 2DEC 655.36 B-26 034406,001087: 034407,001088: # ********************************************************************************* 034408,001089: # REDESIGNATOR TRAP 034409,001090: # ********************************************************************************* 034410,001091: 034411,001092: 11,2302 BANK 11 034412,001093: 11,2000 SETLOC F2DPS*11 034413,001094: 11,2000 BANK 034414,001095: 034415,001096: 11,2302 COUNT* $$/F2DPS 034416,001097: 034417,001098: 11,2302 56016 PITFALL XCH BANKRUPT 034418,001099: 11,2303 00006 EXTEND 034419,001100: 11,2304 22012 QXCH QRUPT 034420,001101: # Page 820 034421,001102: 11,2305 05321 TC CHECKMM # IF NOT IN P64, NO REASON TO CONTINUE 034422,001103: 11,2306 00100 DEC 64 B-14 034423,001104: 11,2307 15270 TCF RESUME 034424,001105: 034425,001106: 11,2310 00006 EXTEND 034426,001107: 11,2311 00031 READ CHAN31 034427,001108: 11,2312 40000 COM 034428,001109: 11,2313 72401 MASK ALL4BITS 034429,001110: 11,2314 55444 TS ELVIRA 034430,001111: 11,2315 34752 CAF TWO 034431,001112: 11,2316 55443 TS ZERLINA 034432,001113: 11,2317 34756 CAF FIVE 034433,001114: 11,2320 05173 TC TWIDDLE 034434,001115: 11,2321 02326 ADRES REDESMON 034435,001116: 11,2322 15270 TCF RESUME 034436,001117: 034437,001118: # REDESIGNATOR MONITOR (INITIATED BY PITFALL) 034438,001119: 034439,001120: 11,2323 55443 PREMON1 TS ZERLINA 034440,001121: 11,2324 34757 PREMON2 CAF SEVEN 034441,001122: 11,2325 05224 TC VARDELAY 034442,001123: 11,2326 00006 REDESMON EXTEND 034443,001124: 11,2327 00031 READ 31 034444,001125: 11,2330 40000 COM 034445,001126: 11,2331 72401 MASK ALL4BITS 034446,001127: 11,2332 57444 XCH ELVIRA 034447,001128: 11,2333 54001 TS L 034448,001129: 11,2334 11444 CCS ELVIRA # DO ANY BITS APPEAR THIS PASS? 034449,001130: 11,2335 12324 TCF PREMON2 # Y: CONTINUE MONITOR 034450,001131: 11,2336 10001 CCS L # N: ANY LAST PASS? 034451,001132: 11,2337 12347 TCF COUNT'EM # Y: COUNT 'EM, RESET RUPT, TERMINATE 034452,001133: 11,2340 11443 CCS ZERLINA # N: HAS ZERLINA REACHED ZERO YET? 034453,001134: 11,2341 12323 TCF PREMON1 # N: DIMINISH ZERLINA, CONTINUE 034454,001135: 11,2342 06022 RESETRPT TC C13STALL # Y: RESET RUPT, TERMINATE 034455,001136: 11,2343 34740 CAF BIT12 034456,001137: 11,2344 00006 EXTEND 034457,001138: 11,2345 05013 WOR CHAN13 034458,001139: 11,2346 15261 TCF TASKOVER 034459,001140: 034460,001141: 11,2347 34737 COUNT'EM CAF BIT13 # ARE WE IN ATTITUDE-HOLD? 034461,001142: 11,2350 00006 EXTEND 034462,001143: 11,2351 02031 RAND CHAN31 034463,001144: 11,2352 00006 EXTEND 034464,001145: 11,2353 12342 BZF RESETRPT # YES: SKIP REDESIGNATION LOGIC. 034465,001146: 11,2354 30001 CA L # NO. 034466,001147: 11,2355 74746 MASK -AZBIT 034467,001148: # Page 821 034468,001149: 11,2356 10000 CCS A 034469,001150: 11,2357 42402 -AZ CS AZEACH 034470,001151: 11,2360 27445 ADS AZINCR1 034471,001152: 11,2361 30001 CA L 034472,001153: 11,2362 74747 MASK +AZBIT 034473,001154: 11,2363 10000 CCS A 034474,001155: 11,2364 32402 +AZ CA AZEACH 034475,001156: 11,2365 27445 ADS AZINCR1 034476,001157: 11,2366 30001 CA L 034477,001158: 11,2367 74753 MASK -ELBIT 034478,001159: 11,2370 10000 CCS A 034479,001160: 11,2371 42403 -EL CS ELEACH 034480,001161: 11,2372 27446 ADS ELINCR1 034481,001162: 11,2373 30001 CA L 034482,001163: 11,2374 74752 MASK +ELBIT 034483,001164: 11,2375 10000 CCS A 034484,001165: 11,2376 32403 +EL CA ELEACH 034485,001166: 11,2377 27446 ADS ELINCR1 034486,001167: 11,2400 12342 TCF RESETRPT 034487,001168: 034488,001169: # THESE EQUIVALENCES ARE BASED ON GSOP CHAPTER 4, REVISION 16 OF P64LM 034489,001170: 034490,001171: 11,2401 4752 +ELBIT = BIT2 # -PITCH 034491,001172: 11,2401 4753 -ELBIT = BIT1 # +PITCH 034492,001173: 11,2401 4747 +AZBIT = BIT5 034493,001174: 11,2401 4746 -AZBIT = BIT6 034494,001175: 034495,001176: 11,2401 00063 ALL4BITS OCT 00063 034496,001177: 11,2402 01074 AZEACH DEC .03491 # 2 DEGREES 034497,001178: 11,2403 00217 ELEACH DEC .00873 # 1/2 DEGREE 034498,001179: 034499,001180: # **************************************************************** 034500,001181: # R.O.D. TRAP 034501,001182: # **************************************************************** 034502,001183: 034503,001184: 23,2000 SETLOC RODTRAP 034504,001185: # Page 822 034505,001186: 23,2000 BANK 034506,001187: 23,2455 COUNT* $$/F2DPS # ************************ 034507,001188: 034508,001189: 23,2455 74745 DESCBITS MASK BIT7 # COME HERE FROM MARKRUPT CODING WITH BIT 034509,001190: 23,2456 10000 CCS A # 7 OR 6 OF CHANNEL 16 IN A; BIT 7 MEANS 034510,001191: 23,2457 44752 CS TWO # - RATE INCREMENT, BIT 6 + INCREMENT. 034511,001192: 23,2460 64753 AD ONE 034512,001193: 23,2461 27746 ADS RODCOUNT 034513,001194: 23,2462 15270 TCF RESUME # TRAP IS RESET WHEN SWITCH IS RELEASED 034514,001195: 034515,001196: 31,3512 BANK 31 034516,001197: 31,2000 SETLOC F2DPS*31 034517,001198: 31,2000 BANK 034518,001199: 034519,001200: 31,3512 COUNT* $$/F2DPS 034520,001201: 034521,001202: # *********************************************************************************** 034522,001203: # DOUBLE PRECISION ROOT FINDER SUBROUTINE (BY ALLAN KLUMPP) 034523,001204: # *********************************************************************************** 034524,001205: 034525,001206: # N N-1 034526,001207: # ROOTPSRS FINDS ONE ROOT OF THE POWER SERIES A X + A X + ... + A X + A 034527,001208: # N N-1 1 0 034528,001209: # USING NETON'S METHOD STARTING WITH AN INITIAL GUESS FOR THE ROOT. THE ENTERING DATA MUST BE AS FOLLOWS: 034529,001210: # A SP LOC-3 ADRES FOR REFERENCING PWR COF TABL 034530,001211: # L SP N-1 N IS THE DEGREE OF THE POWER SERIES 034531,001212: # MPAC DP X INITIAL GUESS FOR ROOT 034532,001213: # LOC-2N DP A(0) 034533,001214: # ... 034534,001215: # LOC DP A(N) 034535,001216: # LOC+2 SP PRECROOT PREC RQD OF ROOT (AS FRACT OF 1ST GUESS) 034536,001217: 034537,001218: # THE DP RESULT IS LEFT IN MPAC UPON EXIT, AND A SP COUNT OF THE ITERATIONS TO CONVERGENCE IS LEFT IN MPAC+2. 034538,001219: # RETURN IS NORMALLY TO LOC(TC ROOTPSRS)+3. IF ROOTPSRS FAILS TO CONVERGE TO IN 8 PASSES, RETURN IS TO LOC+1 AND 034539,001220: # OUTPUTS ARE NOT TO BE TRUSTED. 034540,001221: 034541,001222: # PRECAUTION: ROOTPSRS MAKES NO CHECKS FOR OVERFLOW OR FOR IMPROPER USAGE. IMPROPER USAGE COULD 034542,001223: # PRECLUDE CONVERGENCE OR REQUIRE EXCESSIVE ITERATIONS. AS A SPECIFIC EXAMPLE, ROOTPSRS FORMS A DERIVATIVE 034543,001224: # COEFFICIENT TABLE BY MULTIPLYINE EACH A(I) BY I, WHERE I RANGES FROM 1 TO N. IF AN ELEMENT OF THE DERIVATIVE 034544,001225: # COEFFICIENT TABLE = 1 OR >1 IN MAGNITUDE, ONLY THE EXCESS IS RETAINED. ROOTPSRS MAY CONVERGE ON THE COREECT 034545,001226: # ROOT NONETHELESS, BUT IT MAY TAKE AN EXCESSIVE NUMBER OF ITERATIONS. THEREFORE THE USER SHOULD RECOGNIZE: 034546,001227: # 1. USER'S RESPONSIBILITY TO ASSUR THAT I X A(I) < 1 IN MAGNITUDE FOR ALL I. 034547,001228: # 2. USER'S RESPONSIBILITY TO ASSURE OVERFLOW WILL NOT OCCUR IN EVALUTATING EITHER THE RESIDUAL OR THE DERIVATIVE 034548,001229: # POWER SERIES. THIS OVERFLOW WOULD BE PRODUCED BY SUBROUTINE POWRSERS, CALLED BY ROOTPSRS, AND MIGHT NOT 034549,001230: # Page 823 034550,001231: # PRECLUDE EVENTUAL CONVERGENCE. 034551,001232: # 3. AT PRESENT, ERASABLE LOCATIONS ARE RESERVED ONLY FOR N UP TO 5. AN N IN EXCESS OF 5 WILL PRODUCE CHAOS. 034552,001233: # ALL ERASABLES USED BY ROOTPSRS ARE UNSWITCHED LOCATED IN THE REGION FROM MPAC-33 OCT TO MPAC+7. 034553,001234: # 4. THE ITERATION COUNT RETURNED IN MPAC+2 MAY BE USED TO DETECT ABNORMAL PERFORMANCE. 034554,001235: 034555,001236: # STORE ENTERING DATA, INITIALIZE ERASABLES 034556,001237: 31,3512 00006 ROOTPSRS EXTEND 034557,001238: 31,3513 22132 QXCH RETROOT # RETURN ADRES 034558,001239: 31,3514 54117 TS PWRPTR # PWR TABLE POINTER 034559,001240: 31,3515 52160 DXCH MPAC +3 # PWR TABLE ADRES, N-1 034560,001241: 31,3516 33635 CA DERTABLL 034561,001242: 31,3517 54141 TS DERPTR # DER TABL POINTER 034562,001243: 31,3520 54161 TS MPAC +5 # DER TABL ADRES 034563,001244: 31,3521 10160 CCS MPAC +4 # NO POWER SERIES DEGREE 1 OR LESS 034564,001245: 31,3522 54162 TS MPAC +6 # N-2 034565,001246: 31,3523 34755 CA ZERO # MODE USED AS ITERATION COUNTER. MODE 034566,001247: 31,3524 54163 TS MODE # MUST BE POS SO ABS WON'T COMP MPAC+3 ETC. 034567,001248: 034568,001249: # COMPUTE CRITERION TO STOP ITERATING 034569,001250: 31,3525 00006 EXTEND 034570,001251: 31,3526 30155 DCA MPAC # FETCH ROOT GUESS, KEEPING IT IN MPAC 034571,001252: 31,3527 52127 DXCH ROOTPS # AND IN ROOTPS 034572,001253: 31,3530 50157 INDEX MPAC +3 # PWR TABLE ADRES 034573,001254: 31,3531 30005 CA 5 # PRECROOT TO A 034574,001255: 31,3532 07312 TC SHORTMP # YIELDS DP PRODUCT IN MPAC 034575,001256: 31,3533 04713 TC USPRCADR 034576,001257: 31,3534 01226 CADR ABS # YIELDS ABVAL OF CRITERION ON DX IN MPAC 034577,001258: 31,3535 52155 DXCH MPAC 034578,001259: 31,3536 52125 DXCH DXCRIT # CRITERION 034579,001260: 034580,001261: # SET UP DER COF TABL 034581,001262: 31,3537 00006 EXTEND 034582,001263: 31,3540 50117 INDEX PWRPTR 034583,001264: 31,3541 30004 DCA 3 034584,001265: 31,3542 52155 DXCH MPAC # A(N) TO MPAC 034585,001266: 034586,001267: 31,3543 30160 CA MPAC +4 # N-1 TO A 034587,001268: 034588,001269: 31,3544 54140 DERCLOOP TS PWRCNT # LOOP COUNTER 034589,001270: 31,3545 64753 AD ONE 034590,001271: 31,3546 07321 TC DMPNSUB # YIELDS DERCOF = I X A(I) IN MPAC 034591,001272: 31,3547 00006 EXTEND 034592,001273: 31,3550 50117 INDEX PWRPTR 034593,001274: 31,3551 30002 DCA 1 034594,001275: 31,3552 52155 DXCH MPAC # (I-1) TO MPAC, FETCHING DERCOF 034595,001276: # Page 824 034596,001277: 31,3553 50141 INDEX DERPTR 034597,001278: 31,3554 52004 DXCH 3 # DERCOF TO DER TABLE 034598,001279: 31,3555 44752 CS TWO 034599,001280: 31,3556 26117 ADS PWRPTR # DECREMENT PWR POINTER 034600,001281: 31,3557 44752 CS TWO 034601,001282: 31,3560 26141 ADS DERPTR # DECREMENT DER POINTER 034602,001283: 31,3561 10140 CCS PWRCNT 034603,001284: 31,3562 13544 TCF DERCLOOP 034604,001285: 034605,001286: # CONVERGE ON ROOT 034606,001287: 31,3563 00006 ROOTLOOP EXTEND 034607,001288: 31,3564 30127 DCA ROOTPS # FETCH CURRENT ROOT 034608,001289: 31,3565 52155 DXCH MPAC # LEAVE IN MPAC 034609,001290: 31,3566 00006 EXTEND 034610,001291: 31,3567 30162 DCA MPAC +5 # LOAD A, L WITH DER TABL ADRES, N-2 034611,001292: 31,3570 07220 TC POWRSERS # YIELDS DERIVATIVE IN MPAC 034612,001293: 034613,001294: 31,3571 00006 EXTEND 034614,001295: 31,3572 30127 DCA ROOTPS 034615,001296: 31,3573 52155 DXCH MPAC # CURRENT ROOT TO MPAC, FETCHING DERIVATIVE 034616,001297: 31,3574 52131 DXCH BUF # LEAVE DERIVATIVE IN BUF AS DIVISOR 034617,001298: 31,3575 00006 EXTEND 034618,001299: 31,3576 30160 DCA MPAC +3 # LOAD A, L WITH PWR TABL ADRES, N-1 034619,001300: 31,3577 07220 TC POWRSERS # YIELDS RESIDUAL IN MPAC 034620,001301: 034621,001302: 31,3600 04713 TC USPRCADR 034622,001303: 31,3601 00353 CADR DDV/BDDV # YIELDS -DX IN MPAC 034623,001304: 034624,001305: 31,3602 00006 EXTEND 034625,001306: 31,3603 40155 DCS MPAC # FETCH DX, LEAVING -DX IN MPAC 034626,001307: 31,3604 20127 DAS ROOTPS # CORRECTED ROOT NOW IN ROOTPS 034627,001308: 034628,001309: 31,3605 04713 TC USPRCADR 034629,001310: 31,3606 01226 CADR ABS # YIELDS ABS(DX) IN MPAC 034630,001311: 31,3607 00006 EXTEND 034631,001312: 31,3610 40125 DCS DXCRIT 034632,001313: 31,3611 20155 DAS MPAC # ABS(DX)-ABS(DXCRIT) IN MPAC 034633,001314: 034634,001315: 31,3612 30163 CA MODE 034635,001316: 31,3613 74750 MASK BIT4 # KLUMPP SAYS GIVE UP AFTER EIGHT PASSES 034636,001317: 31,3614 10000 CCS A 034637,001318: 31,3615 00132 BADROOT TC RETROOT 034638,001319: 034639,001320: 31,3616 24163 INCR MODE # INCREMENT ITERATION COUNTER 034640,001321: 31,3617 10154 CCS MPAC # TEST HI ORDER DX 034641,001322: 31,3620 13563 TCF ROOTLOOP 034642,001323: 31,3621 13623 TCF TESTLODX 034643,001324: 31,3622 13627 TCF ROOTSTOR 034644,001325: 31,3623 10155 TESTLODX CCS MPAC +1 # TEST LO ORDER DX 034645,001326: # Page 825 034646,001327: 31,3624 13563 TCF ROOTLOOP 034647,001328: 31,3625 13627 TCF ROOTSTOR 034648,001329: 31,3626 13627 TCF ROOTSTOR 034649,001330: 31,3627 52127 ROOTSTOR DXCH ROOTPS 034650,001331: 31,3630 52155 DXCH MPAC 034651,001332: 31,3631 30163 CA MODE 034652,001333: 31,3632 54156 TS MPAC +2 # STORE SP ITERATION COUNT IN MPAC+2 034653,001334: 31,3633 50132 INDEX RETROOT 034654,001335: 31,3634 10002 TCF 2 034655,001336: 034656,001337: 31,3635 00147 DERTABLL ADRES DERCOFN -3 034657,001338: 034658,001339: # **************************************************************************** 034659,001340: # TRASHY LITTLE SUBROUTINES 034660,001341: # **************************************************************************** 034661,001342: 034662,001343: 31,3636 51346 INTPRETX INDEX WCHPHASE # SET X1 ON THE WAY TO THE INTERPRETER 034663,001344: 31,3637 42413 CS TARGTDEX 034664,001345: 31,3640 50120 INDEX FIXLOC 034665,001346: 31,3641 54046 TS X1 034666,001347: 31,3642 16042 TCF INTPRET 034667,001348: 034668,001349: 31,3643 31642 TDISPSET CA TTF/8 034669,001350: 31,3644 00006 EXTEND 034670,001351: 31,3645 74750 MP TSCALINV 034671,001352: 31,3646 53476 DXCH TTFDISP 034672,001353: 034673,001354: 31,3647 35014 CA EBANK5 # TREDES BECOMES ZERO TWO PASSES 034674,001355: 31,3650 54003 TS EBANK # BEFORE TCGFAPPR IS REACHED 034675,001356: 31,3651 E5,1470 EBANK= TCGFAPPR 034676,001357: 31,3651 31470 CA TCGFAPPR 034677,001358: 31,3652 24006 INCR BBANK 034678,001359: 31,3653 24006 INCR BBANK 034679,001360: 31,3654 E7,1642 EBANK= TTF/8 034680,001361: 31,3654 61642 AD TTF/8 034681,001362: 31,3655 00006 EXTEND 034682,001363: 31,3656 73711 MP TREDESCL 034683,001364: 31,3657 63706 AD -DEC103 034684,001365: 31,3660 64735 AD NEGMAX 034685,001366: 31,3661 54001 TS L 034686,001367: 31,3662 40001 CS L 034687,001368: 31,3663 60001 AD L 034688,001369: 31,3664 63710 AD +DEC99 034689,001370: 31,3665 64733 AD POSMAX 034690,001371: 31,3666 55666 TS TREDES 034691,001372: 31,3667 41666 CS TREDES 034692,001373: 31,3670 27666 ADS TREDES 034693,001374: 31,3671 00002 TC Q 034694,001375: 034695,001376: # Page 826 034696,001377: 31,3672 05642 1406P00 TC P00DOO 034697,001378: 31,3673 21406 OCT 21406 034698,001379: 31,3674 05567 1406ALM TC ALARM 034699,001380: 31,3675 01406 OCT 01406 034700,001381: 31,3676 13411 TCF RATESTOP 034701,001382: 034702,001383: # ********************************************************************* 034703,001384: # SPECIALIZED "PHASCHNG" SUBROUTINE 034704,001385: # ********************************************************************* 034705,001386: 034706,001387: 31,3677 E3,1440 EBANK= PHSNAME2 034707,001388: 31,3677 35007 FASTCHNG CA EBANK3 # SPECIALIZED `PHASCHNG' ROUTINE 034708,001389: 31,3700 56003 XCH EBANK 034709,001390: 31,3701 52002 DXCH L 034710,001391: 31,3702 55442 TS PHSNAME3 034711,001392: 31,3703 22003 LXCH EBANK 034712,001393: 31,3704 E7,1621 EBANK= E2DPS 034713,001394: 31,3704 00000 TC A 034714,001395: 034715,001396: # ************************************************************************************* 034716,001397: # PARAMETER TABLE INDIRECT ADDRESSES 034717,001398: # ************************************************************************************* 034718,001399: 034719,001400: 31,3705 E5,1402 RDG = RBRFG 034720,001401: 31,3705 E5,1410 VDG = VBRFG 034721,001402: 31,3705 E5,1416 ADG = ABRFG 034722,001403: 31,3705 E5,1424 VDG2TTF = VBRFG* 034723,001404: 31,3705 E5,1426 ADG2TTF = ABRFG* 034724,001405: 31,3705 E5,1430 JDG2TTF = JBRFG* 034725,001406: 034726,001407: # ************************************************************************************* 034727,001408: # LUNAR LANDING CONSTANTS 034728,001409: # ************************************************************************************* 034729,001410: 034730,001411: 31,3705 01565 TABLTTFL ADRES TABLTTF +3 # ADDRESS FOR REFERENCING TTF TABLE 034731,001412: 31,3706 4740 TTFSCALE = BIT12 034732,001413: 31,3706 4750 TSCALINV = BIT4 034733,001414: 31,3706 77630 -DEC103 DEC -103 B-14 034734,001415: 31,3707 00155 P64DB OCT 00155 # 0.3 DEGREES SCALED AT CDU SCALING. 034735,001416: # Page 827 034736,001417: 31,3710 00143 +DEC99 DEC +99 B-14 034737,001418: 31,3711 75340 TREDESCL DEC -.08 034738,001419: 31,3712 00264 180DEGS DEC +180 B-14 034739,001420: 31,3713 00056 1/2DEG DEC +.00278 034740,001421: 31,3714 01542 PROJMAX DEC .42262 B-3 # SIN(25')/8 TO COMPARE WITH PROJ 034741,001422: 31,3715 01022 PROJMIN DEC .25882 B-3 # SIN(15')/8 TO COMPARE WITH PROJ 034742,001423: 31,3716 01477 V06N63 VN 0663 # P63 034743,001424: 31,3717 01500 V06N64 VN 0664 # P64 034744,001425: 31,3720 01474 V06N60 VN 0660 # P65, P66, P67 034745,001426: 034746,001427: 22,3647 BANK 22 034747,001428: 22,2000 SETLOC LANDCNST 034748,001429: 22,2000 BANK 034749,001430: 22,3647 COUNT* $$/F2DPS 034750,001431: 034751,001432: 22,3647 00021 14161 HIGHESTF 2DEC 4.34546769 B-12 034752,001433: 22,3651 01440 00000 GSCALE 2DEC 100 B-11 034753,001434: 22,3653 14000 00000 3/8DP 2DEC .375 034754,001435: 22,3655 30000 00000 3/4DP 2DEC .750 034755,001436: 22,3657 77534 45074 DEPRCRIT 2DEC -.02 B-1 034756,001437: 034757,001438: # ************************************************************************** 034758,001439: # ************************************************************************** End of include-file LUNAR_LANDING_GUIDANCE_EQUATIONS.agc. Parent file is MAIN.agc