Source Code

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