Source Code
![]() |
This is a reconstruction of the AGC program Luminary 99 Rev 0. It was the
second release of the Lunar Module flight software targeted for use in Apollo 11, after Luminary 97.
A bug (which had been around since at least Apollo 10, Luminary 69) was
discovered in Rev 0 shortly before the Apollo 11 flight, resulting in a last minute
revision into Rev 1,
which is what actually flew rather than
the Rev 0 presented here. A hardcopy of Rev 0 is known to
exist — it belonged to AGC developer Allan Klumpp for many years — but
unfortunately the Virtual AGC Project has not had access to that hardcopy. Thus
the code you see here had been reconstructed (we believe accurately) rather than
transcribed. The first step of the reconstruction of the Rev 0 source code was
the transcription of the Rev 1 source code from a hardcopy in the MIT Museum collection.
The process of reverting the active portion of the source code (i.e., other than
program comments) from Rev 1 to Rev 0 was very minor, consisting
only of moving the position of the STARTSB1 label in
FRESH START AND RESTART. Allan had previously given
us the checksums of the memory banks of Rev 0, and we have verified the program presented here has checksums
identical to all banks of Allan's listing of Rev 0. The notations on Allan's Rev 0 program listing read,
in part:GAP: ASSEMBLE REVISION 099 OF AGC PROGRAM LUMINARY BY NASA 2021112-051 A single program comment is known to differ between Rev 0 and Rev 1, but these are harder to reconstruct and verify than changes to the active portion of the code. Thus it is possible that there are additional differences between the program comments in Rev 0 and Rev 1 that are unknown to us, and therefore are not reflected in the code presented here. |
035306,000002: ## Copyright: Public domain.
035307,000003: ## Filename: LUNAR_LANDING_GUIDANCE_EQUATIONS.agc
035308,000004: ## Purpose: Part of the reconstructed source code for LMY99 Rev 0,
035309,000005: ## otherwise known as Luminary Rev 99, the second release
035310,000006: ## of the Apollo Guidance Computer (AGC) software for Apollo 11.
035311,000007: ## It differs from LMY99 Rev 1 (the flown version) only in the
035312,000008: ## placement of a single label. The corrections shown here have
035313,000009: ## been verified to have the same bank checksums as AGC developer
035314,000010: ## Allan Klumpp's copy of Luminary Rev 99, and so are believed
035315,000011: ## to be accurate. This file is intended to be a faithful
035316,000012: ## recreation, except that the code format has been changed to
035317,000013: ## conform to the requirements of the yaYUL assembler rather than
035318,000014: ## the original YUL assembler.
035319,000015: ##
035320,000016: ## Assembler: yaYUL
035321,000017: ## Contact: HARTMUTH GUTSCHE <hgutsche@xplornet.com>.
035322,000018: ## Website: www.ibiblio.org/apollo.
035323,000019: ## Pages: 798-828
035324,000020: ## Mod history: 2009-05-23 HG Transcribed from page images.
035325,000021: ## 2009-06-05 RSB Fixed a goofy thing that was apparently
035326,000022: ## legal in GAP but not in yaYUL. Eliminated
035327,000023: ## a couple of lines of code that shouldn't
035328,000024: ## have survived from Luminary 131 to here.
035329,000025: ## 2009-06-07 RSB Fixed a typo.
035330,000026: ## 2011-01-06 JL Fixed pseudo-labels which were incorrectly real labels.
035331,000027: ## 2011-05-07 JL Removed workaround.
035332,000028: ## 2016-12-13 RSB GOTOP00H -> GOTOPOOH
035333,000029: ## 2016-12-16 RSB Proofed text comments with octopus/ProoferComments
035334,000030: ## and corrected the errors found.
035335,000031: ## 2017-03-10 RSB Comment-text fixes noted while transcribing Luminary 116.
035336,000032: ## The label 1406P00 was replaced with 1406POO.
035337,000033: ## 2017-03-16 RSB Comment-text fixes identified in 5-way
035338,000034: ## side-by-side diff of Luminary 69/99/116/131/210.
035339,000035: ## 2017-08-01 MAS Created from LMY99 Rev 1.
035340,000036:
035341,000037: ## This source code has been transcribed or otherwise adapted from
035342,000038: ## digitized images of a hardcopy from the MIT Museum. The digitization
035343,000039: ## was performed by Paul Fjeld, and arranged for by Deborah Douglas of
035344,000040: ## the Museum. Many thanks to both. The images (with suitable reduction
035345,000041: ## in storage size and consequent reduction in image quality as well) are
035346,000042: ## available online at www.ibiblio.org/apollo. If for some reason you
035347,000043: ## find that the images are illegible, contact me at info@sandroid.org
035348,000044: ## about getting access to the (much) higher-quality images which Paul
035349,000045: ## actually created.
035350,000046: ##
035351,000047: ## The code has been modified to match LMY99 Revision 0, otherwise
035352,000048: ## known as Luminary Revision 99, the Apollo 11 software release preceeding
035353,000049: ## the listing from which it was transcribed. It has been verified to
035354,000050: ## contain the same bank checksums as AGC developer Allan Klumpp's listing
035355,000051: ## of Luminary Revision 99 (for which we do not have scans).
035356,000052: ##
035357,000053: ## Notations on Allan Klumpp's listing read, in part:
035358,000054: ##
035359,000055: ## ASSEMBLE REVISION 099 OF AGC PROGRAM LUMINARY BY NASA 2021112-51
035360,000056:
![]() |
Page 798 |
035362,000058: 31,2420 E7,1621 EBANK= E2DPS
035363,000059: 31,2420 COUNT* $$/F2DPS
035364,000060:
035365,000061: # ****************************************************************************************************************
035366,000062: # LUNAR LANDING FLIGHT SEQUENCE TABLES
035367,000063: # ****************************************************************************************************************
035368,000064:
035369,000065: # FLIGHT SEQUENCE TABLES ARE ARRANGED BY FUNCTION. THEY ARE REFERENCED USING AS AN INDEX THE REGISTER WCHPHASE:
035370,000066: # WCHPHASE = -1 ---> IGNALG
035371,000067: # WCHPHASE = 0 ---> BRAKQUAD
035372,000068: # WCHPHASE = 1 ---> APPRQUAD
035373,000069: # WCHPHASE = 2 ---> VERTICAL
035374,000070:
035375,000071: # ***************************************************************************************************************
035376,000072:
035377,000073: # ROUTINES FOR STARTING NEW GUIDANCE PHASES:
035378,000074:
035379,000075: 31,2420 12641 TCF TTFINCR # IGNALG
035380,000076: 31,2421 12641 NEWPHASE TCF TTFINCR # BRAKQUAD
035381,000077: 31,2422 12630 TCF STARTP64 # APPRQUAD
035382,000078: 31,2423 12621 TCF P65START # VERTICAL
035383,000079:
035384,000080: # PRE-GUIDANCE COMPUTATIONS:
035385,000081:
035386,000082: 31,2424 13003 TCF CALCRGVG # IGNALG
035387,000083: 31,2425 13013 PREGUIDE TCF RGVGCALC # BRAKQUAD
035388,000084: 31,2426 12704 TCF REDESIG # APPRQUAD
035389,000085: 31,2427 13013 TCF RGVGCALC # VERTICAL
035390,000086:
035391,000087: # GUIDANCE EQUATIONS:
035392,000088:
035393,000089: 31,2430 13061 TCF TTF/8CL # IGNALG
035394,000090: 31,2431 13061 WHATGUID TCF TTF/8CL # BRAKQUAD
035395,000091: 31,2432 13061 TCF TTF/8CL # APPRQUAD
035396,000092: 31,2433 13531 TCF VERTGUID # VERTICAL
035397,000093:
035398,000094: # POST GUIDANCE EQUATION COMPUTATIONS:
035399,000095:
035400,000096: 31,2434 13245 TCF CGCALC # IGNALG
035401,000097: 31,2435 13245 AFTRGUID TCF CGCALC # BRAKQUAD
035402,000098: 31,2436 13245 TCF CGCALC # APPRQUAD
035403,000099: 31,2437 13432 TCF STEER? # VERTICAL
035404,000100:
![]() |
Page 799 |
035406,000102: # WINDOW VECTOR COMPUTATIONS:
035407,000103:
035408,000104: 31,2440 13331 TCF EXGSUB # IGNALG
035409,000105: 31,2441 13352 WHATEXIT TCF EXBRAK # BRAKQUAD
035410,000106: 31,2442 13360 TCF EXNORM # APPRQUAD
035411,000107:
035412,000108: # DISPLAY ROUTINES:
035413,000109:
035414,000110: 31,2443 13473 WHATDISP TCF P63DISPS # BRAKQUAD
035415,000111: 31,2444 13477 TCF P64DISPS # APPRQUAD
035416,000112: 31,2445 13527 TCF VERTDISP # VERTICAL
035417,000113:
035418,000114: # ALARM ROUTINE FOR TTF COMPUTATION:
035419,000115:
035420,000116: 31,2446 13733 TCF 1406POO # IGNALG
035421,000117: 31,2447 13735 WHATALM TCF 1406ALM # BRAKQUAD
035422,000118: 31,2450 13735 TCF 1406ALM # APPRQUAD
035423,000119:
035424,000120: # INDICES FOR REFERENCING TARGET PARAMETERS:
035425,000121:
035426,000122: 31,2451 00000 OCT 0 # IGNALG
035427,000123: 31,2452 00000 TARGTDEX OCT 0 # BRAKQUAD
035428,000124: 31,2453 00034 OCT 34 # APPRQUAD
035429,000125:
035430,000126: # ****************************************************************************************************************
035431,000127: # ENTRY POINTS: ?GUIDSUB FOR THE IGNITION ALGORITHM, LUNLAND FOR SERVOUT
035432,000128: # ****************************************************************************************************************
035433,000129:
035434,000130: # IGNITION ALGORITHM ENTRY: DELIVERS N PASSES OF QUADRATIC QUIDANCE
035435,000131:
035436,000132: 31,2454 77776 ?GUIDSUB EXIT
035437,000133: 31,2455 34752 CAF TWO # N = 3
035438,000134: 31,2456 55647 TS NGUIDSUB
035439,000135: 31,2457 12603 TCF GUILDRET +2
035440,000136:
035441,000137: 31,2460 55647 GUIDSUB TS NGUIDSUB # ON SUCEEDING PASSES SKIP TTFINCR
035442,000138: 31,2461 13003 TCF CALCRGVG
035443,000139:
035444,000140: # NORMAL ENTRY: CONTROL COMES HERE FROM SERVOUT
035445,000141:
035446,000142: 31,2462 05353 LUNLAND TC PHASCHNG
035447,000143: 31,2463 00035 OCT 00035 # GROUP 5: RETAIN ONLY PIPA TASK
035448,000144: 31,2464 05353 TC PHASCHNG
035449,000145: 31,2465 05023 OCT 05023 # GROUP 3: PROTECT GUIDANCE WITH PRIO 21
035450,000146: 31,2466 21000 OCT 21000 # JUST HIGHER THAN SERVICER'S PRIORITY
035451,000147:
![]() |
Page 800 |
035453,000149: # ****************************************************************************************************************
035454,000150: # GUILDENSTERN: AUTO-MODES MONITOR (R13)
035455,000151: # ****************************************************************************************************************
035456,000152:
035457,000153: 31,2467 COUNT* $$/R13
035458,000154:
035459,000155: # HERE IS THE PHILOSOPHY OF GUILDENSTERN: ON EVERY APPEARANCE OR DISAPPEARANCE OF THE MANUAL THROTTLE
035460,000156: # DISCRETE TO SELECT P67 OR P66 RESPECTIVELY; ON EVERY APPEARANCE OF THE ATTITUDE-HOLD DISCRETE TO SELECT P66
035461,000157: # UNLESS THE CURRENT PROGRAM IS P67 IN WHICH CASE THERE IS NO CHANGE.
035462,000158:
035463,000159: 31,2467 00006 GUILDEN EXTEND # IS UN-AUTO-THROTTLE DISCRETE PRESENT?
035464,000160: 31,2470 00030 READ CHAN30
035465,000161: 31,2471 74747 MASK BIT5
035466,000162: 31,2472 10000 CCS A
035467,000163: 31,2473 12551 TCF STARTP67 # YES
035468,000164: 31,2474 05321 P67NOW? TC CHECKMM # NO: ARE WE IN P67 NOW?
035469,000165: 31,2475 00103 DEC 67 B-14
035470,000166: 31,2476 12557 TCF STABL? # NO
035471,000167: 31,2477 03740 STARTP66 TC FASTCHNG # YES
035472,000168: 31,2500 05311 TC NEWMODEX
035473,000169: 31,2501 00102 DEC66 DEC 66 B-14
035474,000170: 31,2502 00006 EXTEND
035475,000171: 31,2503 31474 DCA HDOTDISP # SET DESIRED ALTITUDE RATE = CURRENT
035476,000172: 31,2504 53645 DXCH VDGVERT # ALTITUDE RATE.
035477,000173: 31,2505 06037 STRTP66A TC INTPRET
035478,000174: 31,2506 41535 SLOAD PUSH
035479,000175: 31,2507 01457 PBIASZ
035480,000176: 31,2510 41535 SLOAD PUSH
035481,000177: 31,2511 01455 PBIASY
035482,000178: 31,2512 55535 SLOAD VDEF
035483,000179: 31,2513 01453 PBIASX
035484,000180: 31,2514 43161 VXSC SET
035485,000181: 31,2515 25537 BIASFACT
035486,000182: 31,2516 00463 RODFLAG
035487,000183: 31,2517 26631 STOVL VBIAS
035488,000184: 31,2520 01255 TEMX
035489,000185: 31,2521 77676 VCOMP
035490,000186: 31,2522 27764 STOVL OLDPIPAX
035491,000187: 31,2523 06522 ZEROVECS
035492,000188: 31,2524 17767 STODL DELVROD
035493,000189: 31,2525 02540 RODSCALE
035494,000190: 31,2526 17757 STODL RODSCAL1
035495,000191: 31,2527 01235 PIPTIME
035496,000192: 31,2530 03760 STORE LASTTPIP
035497,000193: 31,2531 77776 EXIT
035498,000194: 31,2532 34755 CAF ZERO
035499,000195: 31,2533 55620 TS FCOLD
035500,000196: 31,2534 55610 TS FWEIGHT
035501,000197: 31,2535 55611 TS FWEIGHT +1
035502,000198: 31,2536 55647 VRTSTART TS WCHVERT
![]() |
Page 801 |
035504,000200: 31,2537 34752 CAF TWO # WCHPHASE = 2 ---> VERTICAL: P65,P66,P67
035505,000201: 31,2540 55621 TS WCHPHOLD
035506,000202: 31,2541 55351 TS WCHPHASE
035507,000203: 31,2542 04616 TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE
035508,000204: 31,2543 40165 CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE
035509,000205: 31,2544 05516 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
035510,000206: 31,2545 00311 ADRES XOVINFLG
035511,000207: 31,2546 05516 TC DOWNFLAG
035512,000208: 31,2547 00143 ADRES REDFLAG
035513,000209: 31,2550 13531 TCF VERTGUID
035514,000210:
035515,000211: 31,2551 05311 STARTP67 TC NEWMODEX # NO HARM IN "STARTING" P67 OVER AND OVER
035516,000212: 31,2552 00103 DEC 67 B-14 # SO NO NEED FOR A FASTCHNG AND NO NEED
035517,000213: 31,2553 34755 CAF ZERO # TO SEE IF ALREADY IN P67.
035518,000214: 31,2554 55746 TS RODCOUNT
035519,000215: 31,2555 34363 CAF TEN
035520,000216: 31,2556 12536 TCF VRTSTART
035521,000217:
035522,000218: 31,2557 34737 STABL? CAF BIT13 # IS UN-ATTITUDE-HOLD DISCRETE PRESENT?
035523,000219: 31,2560 00006 EXTEND
035524,000220: 31,2561 02031 RAND CHAN31
035525,000221: 31,2562 10000 CCS A
035526,000222: 31,2563 12601 TCF GUILDRET # YES: ALL'S WELL
035527,000223:
035528,000224: 31,2564 41011 P66NOW? CS MODREG
035529,000225: 31,2565 62501 AD DEC66
035530,000226: 31,2566 00006 EXTEND
035531,000227: 31,2567 12574 BZF RESTART?
035532,000228:
035533,000229: 31,2570 31746 CA RODCOUNT # NO. HAS THE ROD SWITCH BEEN "CLICKED"?
035534,000230: 31,2571 00006 EXTEND
035535,000231: 31,2572 12601 BZF GUILDRET # NO. CONTINUE WITH AUTOMATIC LANDING.
035536,000232: 31,2573 12477 TCF STARTP66 # YES. SWITCH INTO THE ROD MODE.
035537,000233:
035538,000234: 31,2574 30075 RESTART? CA FLAGWRD1 # HAS THERE BEEN A RESTART?
035539,000235: 31,2575 74740 MASK RODFLBIT
035540,000236: 31,2576 00006 EXTEND
035541,000237: 31,2577 12505 BZF STRTP66A # YES. REINITIALIZE BUT LEAVE VDGVERT AS
035542,000238: # IS.
035543,000239:
035544,000240: 31,2600 13531 TCF VERTGUID # NO: CONTINUE WITH R.O.D.
035545,000241:
035546,000242: # ****************************************************************************************************************
035547,000243: # INITIALIZATION FOR THIS PASS
035548,000244: # ****************************************************************************************************************
035549,000245:
035550,000246: 31,2601 COUNT* $$/F2DPS
035551,000247:
035552,000248: 31,2601 34755 GUILDRET CAF ZERO
035553,000249: 31,2602 55746 TS RODCOUNT
035554,000250:
![]() |
Page 802 |
035556,000252: 31,2603 00006 +2 EXTEND
035557,000253: 31,2604 31625 DCA TPIP
035558,000254: 31,2605 53574 DXCH TPIPOLD
035559,000255:
035560,000256: 31,2606 03740 TC FASTCHNG
035561,000257:
035562,000258: 31,2607 00006 EXTEND
035563,000259: 31,2610 31561 DCA PIPTIME1
035564,000260: 31,2611 53625 DXCH TPIP
035565,000261:
035566,000262: 31,2612 00006 EXTEND
035567,000263: 31,2613 31643 DCA TTF/8
035568,000264: 31,2614 53553 DXCH TTF/8TMP
035569,000265:
035570,000266: 31,2615 11623 CCS FLPASS0
035571,000267: 31,2616 12641 TCF TTFINCR
035572,000268:
035573,000269: 31,2617 51351 BRSPOT1 INDEX WCHPHASE
035574,000270: 31,2620 12421 TCF NEWPHASE
035575,000271:
035576,000272: # ****************************************************************************************************************
035577,000273: # ROUTINES TO START NEW PHASES
035578,000274: # ****************************************************************************************************************
035579,000275:
035580,000276: 31,2621 05311 P65START TC NEWMODEX
035581,000277: 31,2622 00101 DEC 65 B-14
035582,000278: 31,2623 44752 CS TWO
035583,000279: 31,2624 55647 TS WCHVERT
035584,000280: 31,2625 05516 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
035585,000281: 31,2626 00311 ADRES XOVINFLG
035586,000282: 31,2627 12641 TCF TTFINCR
035587,000283:
035588,000284: 31,2630 05311 STARTP64 TC NEWMODEX
035589,000285: 31,2631 00100 DEC 64 B-14
035590,000286: 31,2632 31425 CA DELTTFAP # AUGMENT TTF/8
035591,000287: 31,2633 27552 ADS TTF/8TMP
035592,000288: 31,2634 34740 CA BIT12 # ENABLE RUPT10
035593,000289: 31,2635 00006 EXTEND
035594,000290: 31,2636 05013 WOR CHAN13
035595,000291: 31,2637 05516 TC DOWNFLAG # INITIALIZE REDESIGNATION FLAG
035596,000292: 31,2640 00143 ADRES REDFLAG
035597,000293:
035598,000294:
035599,000295: # (CONTINUE TO TTFINCR)
035600,000296:
035601,000297: # ****************************************************************************************************************
035602,000298: # INCREMENT TTF/8, UPDATE LAND FOR LUNAR ROTATION, DO OTHER USEFUL THINGS
035603,000299: # ****************************************************************************************************************
035604,000300:
035605,000301: # TTFINCR COMPUTATIONS ARE AS FOLLOWS:-
![]() |
Page 803 |
035607,000303: # TTF/8 UPDATED FOR TIME SINCE LAST PASS:
035608,000304: # TTF/8 = TTF/8 + (TPIP - TPIPOLD)/8
035609,000305: # LANDING SITE VECTOR UPDATED FOR LUNAR ROTATION:
035610,000306: # - - - -
035611,000307: # LAND = /LAND/ UNIT(LAND - LAND(TPIP - TPIPOLD) * WM)
035612,000308: # SLANT RANGE TO LANDING SITE, FOR DISPLAY:
035613,000309: # - -
035614,000310: # RANGEDSP = ABVAL(LAND - R)
035615,000311:
035616,000312: 31,2641 06037 TTFINCR TC INTPRET
035617,000313: 31,2642 45345 DLOAD DSU
035618,000314: 31,2643 03625 TPIP
035619,000315: 31,2644 03574 TPIPOLD
035620,000316: 31,2645 41461 SLR PUSH # SHIFT SCALES DELTA TIME TO 2(17) CSECS
035621,000317: 31,2646 21214 11D
035622,000318: 31,2647 47361 VXSC VXV
035623,000319: 31,2650 03635 LAND
035624,000320: 31,2651 02325 WM
035625,000321: 31,2652 47045 BVSU RTB
035626,000322: 31,2653 03635 LAND
035627,000323: 31,2654 21726 NORMUNIT
035628,000324: 31,2655 76561 VXSC VSL1
035629,000325: 31,2656 02333 /LAND/
035630,000326: 31,2657 17545 STODL LANDTEMP
035631,000327: 31,2660 77776 EXIT
035632,000328:
035633,000329: 31,2661 52155 DXCH MPAC
035634,000330: 31,2662 21553 DAS TTF/8TMP # NOW HAVE INCREMENTED TTF/8 IN TTF/8TMP
035635,000331:
035636,000332: 31,2663 03740 TC FASTCHNG
035637,000333:
035638,000334: 31,2664 00006 EXTEND
035639,000335: 31,2665 31553 DCA TTF/8TMP
035640,000336: 31,2666 53643 DXCH TTF/8
035641,000337:
035642,000338: 31,2667 00006 EXTEND
035643,000339: 31,2670 31545 DCA LANDTEMP
035644,000340: 31,2671 53635 DXCH LAND
035645,000341: 31,2672 00006 EXTEND
035646,000342: 31,2673 31547 DCA LANDTEMP +2
035647,000343: 31,2674 53637 DXCH LAND +2
035648,000344: 31,2675 00006 EXTEND
035649,000345: 31,2676 31551 DCA LANDTEMP +4
035650,000346: 31,2677 53641 DXCH LAND +4
035651,000347:
![]() |
Page 804 |
035653,000349: 31,2700 03704 TC TDISPSET
035654,000350: 31,2701 03740 TC FASTCHNG # SINCE REDESIG MAY CHANGE LANDTEMP
035655,000351:
035656,000352: 31,2702 51351 BRSPOT2 INDEX WCHPHASE
035657,000353: 31,2703 12425 TCF PREGUIDE
035658,000354:
035659,000355: # ****************************************************************************************************************
035660,000356: # LANDING SITE PERTURBATION EQUATIONS
035661,000357: # ****************************************************************************************************************
035662,000358:
035663,000359: 31,2704 30102 REDESIG CA FLAGWRD6 # IS REDFLAG SET?
035664,000360: 31,2705 74746 MASK REDFLBIT
035665,000361: 31,2706 00006 EXTEND
035666,000362: 31,2707 13013 BZF RGVGCALC # NO: SKIP REDESIGNATION LOGIC
035667,000363:
035668,000364: 31,2710 31666 CA TREDES # YES: HAS TREDES REACHED ZERO?
035669,000365: 31,2711 00006 EXTEND
035670,000366: 31,2712 13013 BZF RGVGCALC # YES: SKIP REDESIGNATION LOGIC
035671,000367:
035672,000368: 31,2713 00004 INHINT
035673,000369: 31,2714 31267 CA ELINCR1
035674,000370: 31,2715 55554 TS ELINCR
035675,000371: 31,2716 31266 CA AZINCR1
035676,000372: 31,2717 55556 TS AZINCR
035677,000373: 31,2720 03740 TC FASTCHNG
035678,000374:
035679,000375: 31,2721 34755 CA ZERO
035680,000376: 31,2722 55267 TS ELINCR1
035681,000377: 31,2723 55266 TS AZINCR1
035682,000378: 31,2724 55555 TS ELINCR +1
035683,000379: 31,2725 55557 TS AZINCR +1
035684,000380:
035685,000381: 31,2726 30120 CA FIXLOC # SET PD TO 0
035686,000382: 31,2727 54166 TS PUSHLOC
035687,000383:
035688,000384: 31,2730 06037 TC INTPRET
035689,000385: 31,2731 52375 VLOAD VSU
035690,000386: 31,2732 03635 LAND
035691,000387: 31,2733 03521 R # - -
035692,000388: 31,2734 41434 RTB PUSH # PUSH DOWN UNIT (LAND - R)
035693,000389: 31,2735 21726 NORMUNIT
035694,000390: 31,2736 76435 VXV VSL1
035695,000391: 31,2737 02154 YNBPIP # - - -
035696,000392: 31,2740 65361 VXSC PDDL # PUSH DOWN - ELINCR(YNB * UNIT(LAND - R))
035697,000393: 31,2741 03555 ELINCR
035698,000394: 31,2742 03557 AZINCR
035699,000395: 31,2743 52361 VXSC VSU
035700,000396: 31,2744 02154 YNBPIP
035701,000397: 31,2745 41455 VAD PUSH # RESULTING VECTOR IS 1/2 REAL SIZE
035702,000398:
![]() |
Page 805 |
035704,000400:
035705,000401: 31,2746 45345 DLOAD DSU # MAKE SURE REDESIGNATION IS NOT
035706,000402: 31,2747 00001 0 # TOO CLOSE TO THE HORIZON
035707,000403: 31,2750 05660 DEPRCRIT
035708,000404: 31,2751 71240 BMN DLOAD
035709,000405: 31,2752 62755 REDES1
035710,000406: 31,2753 05660 DEPRCRIT
035711,000407: 31,2754 00001 STORE 0
035712,000408: 31,2755 45345 REDES1 DLOAD DSU
035713,000409: 31,2756 03635 LAND
035714,000410: 31,2757 03521 R
035715,000411: 31,2760 74271 DDV VXSC
035716,000412: 31,2761 00001 0
035717,000413: 31,2762 53455 VAD UNIT
035718,000414: 31,2763 03521 R
035719,000415: 31,2764 76561 VXSC VSL1
035720,000416: 31,2765 02333 /LAND/
035721,000417: 31,2766 03545 STORE LANDTEMP
035722,000418: 31,2767 77776 EXIT # LOOKANGL WILL BE COMPUTED AT RGVGCALC
035723,000419:
035724,000420: 31,2770 03740 TC FASTCHNG
035725,000421:
035726,000422: 31,2771 00006 EXTEND
035727,000423: 31,2772 31545 DCA LANDTEMP
035728,000424: 31,2773 53635 DXCH LAND
035729,000425: 31,2774 00006 EXTEND
035730,000426: 31,2775 31547 DCA LANDTEMP +2
035731,000427: 31,2776 53637 DXCH LAND +2
035732,000428: 31,2777 00006 EXTEND
035733,000429: 31,3000 31551 DCA LANDTEMP +4
035734,000430: 31,3001 53641 DXCH LAND +4
035735,000431:
035736,000432: 31,3002 13013 TCF RGVGCALC
035737,000433:
035738,000434: # ****************************************************************************************************************
035739,000435: # COMPUTE STATE IN GUIDANCE COORDINATES
035740,000436: # ****************************************************************************************************************
035741,000437:
035742,000438: # RGVGCALC COMPUTATIONS ARE AS FOLLOWS:-
035743,000439: # VELOCITY RELATIVE TO THE SURFACE:
035744,000440: # - - - -
035745,000441: # ANGTERM = V + R * WM
035746,000442:
035747,000443: # STATE IN GUIDANCE COORDINATES:
035748,000444: # - * - -
035749,000445: # RGU = CG (R - LAND)
035750,000446: # - * - - -
![]() |
Page 806 |
035752,000448: # VGU = CG (V - WM * R)
035753,000449:
035754,000450: # HORIZONTAL VELOCITY FOR DISPLAY:
035755,000451:
035756,000452: # VHORIZ = 8 ABVAL (0, VG , VG )
035757,000453: # 2 1
035758,000454: # DEPRESSION ANGLE FOR DISPLAY:
035759,000455: # - - -
035760,000456: # LOOKANGL = ARCSIN(UNIT(R - LAND).XMBPIP)
035761,000457:
035762,000458: 31,3003 06037 CALCRGVG TC INTPRET # IN IGNALG, COMPUTE V FROM INTEGRATION
035763,000459: 31,3004 64375 VLOAD MXV # OUTPUT AND TRIM CORRECTION TERM
035764,000460: 31,3005 00025 VATT1 # COMPUTED LAST PASS AND LEFT IN UNFC/2
035765,000461: 31,3006 01734 REFSMMAT
035766,000462: 31,3007 53362 VSR1 VAD
035767,000463: 31,3010 03254 UNFC/2
035768,000464: 31,3011 03527 STORE V
035769,000465: 31,3012 77776 EXIT
035770,000466:
035771,000467: 31,3013 06037 RGVGCALC TC INTPRET # ENTER HERE TO RECOMPUTE RG AND VG
035772,000468: 31,3014 47375 VLOAD VXV
035773,000469: 31,3015 03521 R
035774,000470: 31,3016 02325 WM
035775,000471: 31,3017 70455 VAD VSR2 # RESCALE TO UNITS OF 2(9) M/CS
035776,000472: 31,3020 03527 V
035777,000473: 31,3021 02265 STORE ANGTERM
035778,000474: 31,3022 77721 MXV
035779,000475: 31,3023 02603 CG # NO SHIFT SINCE ANGTERM IS DOUBLE SIZED
035780,000476: 31,3024 03627 STORE VGU
035781,000477: 31,3025 55525 PDDL VDEF # FORM (0,VG ,VG ) IN UNITS OF 2(10) M/CS
035782,000478: 31,3026 06522 ZEROVECS # 2 1
035783,000479: 31,3027 52446 ABVAL SL3
035784,000480: 31,3030 26263 STOVL VHORIZ # VHORIZ FOR DISPLAY DURING P65.
035785,000481: 31,3031 03521 R # - -
035786,000482: 31,3032 41451 VSU PUSH # PUSH DOWN R - LAND
035787,000483: 31,3033 03635 LAND
035788,000484: 31,3034 76521 MXV VSL1
035789,000485: 31,3035 02603 CG
035790,000486: 31,3036 02637 STORE RGU
035791,000487: 31,3037 77646 ABVAL
035792,000488: 31,3040 26625 STOVL RANGEDSP
035793,000489: 31,3041 50234 RTB DOT # NOW IN MPAC IS SINE(LOOKANGL)/4
035794,000490: 31,3042 21726 NORMUNIT
035795,000491: 31,3043 02146 XNBPIP
035796,000492: 31,3044 77776 EXIT
035797,000493:
035798,000494: 31,3045 30120 CA FIXLOC # RESET PUSH DOWN POINTER
035799,000495: 31,3046 54166 TS PUSHLOC
035800,000496:
![]() |
Page 807 |
035802,000498: 31,3047 30154 CA MPAC # COMPUTE LOOKANGL ITSELF
035803,000499: 31,3050 60000 DOUBLE
035804,000500: 31,3051 04616 TC BANKCALL
035805,000501: 31,3052 61672 CADR SPARCSIN -1
035806,000502: 31,3053 63753 AD 1/2DEG
035807,000503: 31,3054 00006 EXTEND
035808,000504: 31,3055 73752 MP 180DEGS
035809,000505: 31,3056 55667 TS LOOKANGL # LOOKANGL FOR DISPLAY DURING P64
035810,000506:
035811,000507: 31,3057 51351 BRSPOT3 INDEX WCHPHASE
035812,000508: 31,3060 12431 TCF WHATGUID
035813,000509:
035814,000510: # ****************************************************************************************************************
035815,000511: # TTF/8 COMPUTATION
035816,000512: # ****************************************************************************************************************
035817,000513:
035818,000514: 31,3061 03677 TTF/8CL TC INTPRETX
035819,000515: 31,3062 77743 DLOAD*
035820,000516: 31,3063 02431 JDG2TTF,1
035821,000517: 31,3064 23571 STODL* TABLTTF +6 # A(3) = 8 JDG TO TABLTTF
035822,000518: 31,3065 02427 ADG2TTF,1 # 2
035823,000519: 31,3066 17567 STODL TABLTTF +4 # A(2) = 6 ADG TO TABLTTF
035824,000520: 31,3067 03633 VGU +4 # 2
035825,000521: 31,3070 42605 DMP DAD*
035826,000522: 31,3071 05656 3/4DP
035827,000523: 31,3072 02425 VDG2TTF,1
035828,000524: 31,3073 23565 STODL* TABLTTF +2 # A(1) = (6 VGU + 18 VDG )/8 TO TABLTTF
035829,000525: 31,3074 02407 RDG +4,1 # 2 2
035830,000526: 31,3075 41225 DSU DMP
035831,000527: 31,3076 02643 RGU +4
035832,000528: 31,3077 05654 3/8DP
035833,000529: 31,3100 03563 STORE TABLTTF # A(0) = -24 (RGU - RDG )/64 TO TABLTTF
035834,000530: 31,3101 77776 EXIT # 2 2
035835,000531:
035836,000532: 31,3102 34744 CA BIT8
035837,000533: 31,3103 55572 TS TABLTTF +10 # FRACTIONAL PRECISION FOR TTF TO TABLE
035838,000534:
035839,000535: 31,3104 00006 EXTEND
035840,000536: 31,3105 31643 DCA TTF/8
035841,000537: 31,3106 52155 DXCH MPAC # LOADS TTF/8 (INITIAL GUESS) INTO MPAC
035842,000538: 31,3107 34752 CAF TWO # DEGREE - ONE
035843,000539: 31,3110 54001 TS L
035844,000540: 31,3111 33746 CAF TABLTTFL
035845,000541: 31,3112 03553 TC ROOTPSRS # YIELDS TTF/8 IN MPAC
035846,000542: 31,3113 51351 INDEX WCHPHASE
035847,000543: 31,3114 12447 TCF WHATALM
035848,000544:
035849,000545: 31,3115 00006 EXTEND # GOOD RETURN
035850,000546: 31,3116 30155 DCA MPAC # FETCH TTF/8 KEEPING IT IN MPAC
035851,000547: 31,3117 53643 DXCH TTF/8 # CORRECTED TTF/8
035852,000548:
![]() |
Page 808 |
035854,000550: 31,3120 03704 TC TDISPSET
035855,000551:
035856,000552: # (CONTINUE TO QUADGUID)
035857,000553:
035858,000554: # ****************************************************************************************************************
035859,000555: # MAIN GUIDANCE EQUATION
035860,000556: # ****************************************************************************************************************
035861,000557:
035862,000558: # AS PUBLISHED:-
035863,000559: # - - - -
035864,000560: # - - 6(VDG + VG) 12(RDG - RG)
035865,000561: # ACG = ADG + ----------- + ------------
035866,000562: # TTF (TTF)(TTF)
035867,000563: # AS HERE PROGRAMMED:-
035868,000564: # - -
035869,000565: # 3 (1/4(RDG - RG) - - )
035870,000566: # - (------------- + VDG + VG)
035871,000567: # - 4 ( TTF/8 ) -
035872,000568: # ACG = ---------------------------- + ADG
035873,000569: # TTF/8
035874,000570:
035875,000571: 31,3121 41642 QUADGUID CS TTF/8
035876,000572: 31,3122 61426 AD LEADTIME # LEADTIME IS A NEGATIVE NUMBER
035877,000573: 31,3123 64733 AD POSMAX # SAFEGUARD THE COMPUTATIONS THAT FOLLOW
035878,000574: 31,3124 54001 TS L # BY FORCING -TTF+LEADTIME > OR = ZERO
035879,000575: 31,3125 40001 CS L
035880,000576: 31,3126 60001 AD L
035881,000577: 31,3127 22007 ZL
035882,000578: 31,3130 00006 EXTEND
035883,000579: 31,3131 11642 DV TTF/8
035884,000580: 31,3132 54130 TS BUF # - RATIO OF LAG-DIMINISHED TTF TO TTF
035885,000581: 31,3133 00006 EXTEND
035886,000582: 31,3134 70000 SQUARE
035887,000583: 31,3135 54131 TS BUF +1
035888,000584: 31,3136 60130 AD BUF
035889,000585: 31,3137 56131 XCH BUF +1 # RATIO SQUARED - RATIO
035890,000586: 31,3140 60131 AD BUF +1
035891,000587: 31,3141 54154 TS MPAC # COEFFICIENT FOR VGU TERM
035892,000588: 31,3142 60131 AD BUF +1
035893,000589: 31,3143 50120 INDEX FIXLOC
035894,000590: 31,3144 54032 TS 26D # COEFFICIENT FOR RDG-RGU TERM
035895,000591: 31,3145 60131 AD BUF +1
035896,000592: 31,3146 50120 INDEX FIXLOC
035897,000593: 31,3147 54034 TS 28D # COEFFICIENT FOR VDG TERM
035898,000594: 31,3150 60130 AD BUF
035899,000595: 31,3151 64733 AD POSMAX
![]() |
Page 809 |
035901,000597: 31,3152 60131 AD BUF +1
035902,000598: 31,3153 60131 AD BUF +1
035903,000599: 31,3154 50120 INDEX FIXLOC
035904,000600: 31,3155 54036 TS 30D # COEFFICIENT FOR ADG TERM
035905,000601:
035906,000602: 31,3156 34755 CAF ZERO
035907,000603: 31,3157 54163 TS MODE
035908,000604:
035909,000605: 31,3160 03677 TC INTPRETX
035910,000606: 31,3161 65361 VXSC PDDL
035911,000607: 31,3162 03627 VGU
035912,000608: 31,3163 00035 28D
035913,000609: 31,3164 62757 VXSC* PDVL*
035914,000610: 31,3165 02411 VDG,1
035915,000611: 31,3166 02403 RDG,1
035916,000612: 31,3167 70251 VSU V/SC
035917,000613: 31,3170 02637 RGU
035918,000614: 31,3171 03643 TTF/8
035919,000615: 31,3172 74342 VSR2 VXSC
035920,000616: 31,3173 00033 26D
035921,000617: 31,3174 53255 VAD VAD
035922,000618: 31,3175 74341 V/SC VXSC
035923,000619: 31,3176 03643 TTF/8
035924,000620: 31,3177 05656 3/4DP
035925,000621: 31,3200 73725 PDDL VXSC*
035926,000622: 31,3201 00037 30D
035927,000623: 31,3202 02417 ADG,1
035928,000624: 31,3203 77655 VAD
035929,000625: 31,3204 76505 AFCCALC1 VXM VSL1 # VERTGUID COMES HERE
035930,000626: 31,3205 02603 CG
035931,000627: 31,3206 70315 PDVL V/SC
035932,000628: 31,3207 01237 GDT/2
035933,000629: 31,3210 05652 GSCALE
035934,000630: 31,3211 45445 BVSU STADR
035935,000631: 31,3212 74523 STORE UNFC/2 # UNFC/2 NEED NOT BE UNITIZED
035936,000632: 31,3213 77646 ABVAL
035937,000633: 31,3214 17464 AFCCALC2 STODL /AFC/ # MAGNITUDE OF AFC FOR THROTTLE
035938,000634: 31,3215 03254 UNFC/2 # VERTICAL COMPONENT
035939,000635: 31,3216 65316 DSQ PDDL
035940,000636: 31,3217 03256 UNFC/2 +2 # OUT-OF-PLANE
035941,000637: 31,3220 65316 DSQ PDDL
035942,000638: 31,3221 05650 HIGHESTF
035943,000639: 31,3222 63471 DDV DSQ
035944,000640: 31,3223 01245 MASS # 2 2 2
035945,000641: 31,3224 45225 DSU DSU # AMAXHORIZ = SQRT(ATOTAL - A - A )
035946,000642: 31,3225 71244 BPL DLOAD # 1 0
035947,000643: 31,3226 63230 AFCCALC3
035948,000644: 31,3227 06522 ZEROVECS
035949,000645: 31,3230 43366 AFCCALC3 SQRT DAD
035950,000646: 31,3231 03260 UNFC/2 +4
![]() |
Page 810 |
035952,000648: 31,3232 44244 BPL BDSU
035953,000649: 31,3233 63236 AFCCLEND
035954,000650: 31,3234 03260 UNFC/2 +4
035955,000651: 31,3235 03260 STORE UNFC/2 +4
035956,000652: 31,3236 77776 AFCCLEND EXIT
035957,000653: 31,3237 03740 TC FASTCHNG
035958,000654:
035959,000655: 31,3240 31351 CA WCHPHASE # PREPARE FOR PHASE SWITCHING LOGIC
035960,000656: 31,3241 55621 TS WCHPHOLD
035961,000657: 31,3242 25623 INCR FLPASS0 # INCREMENT PASS COUNTER
035962,000658:
035963,000659: 31,3243 51351 BRSPOT4 INDEX WCHPHASE
035964,000660: 31,3244 12435 TCF AFTRGUID
035965,000661:
035966,000662: # ***************************************************************************************************************
035967,000663: # ERECT GUIDANCE-STABLE MEMBER TRANSFORMATION MATRIX
035968,000664: # ***************************************************************************************************************
035969,000665:
035970,000666: 31,3245 35014 CGCALC CAF EBANK5
035971,000667: 31,3246 54003 TS EBANK
035972,000668: 31,3247 E5,1435 EBANK= TCGIBRAK
035973,000669: 31,3247 00006 EXTEND
035974,000670: 31,3250 51351 INDEX WCHPHASE
035975,000671: 31,3251 52452 INDEX TARGTDEX
035976,000672: 31,3252 31435 DCA TCGFBRAK
035977,000673: 31,3253 24006 INCR BBANK
035978,000674: 31,3254 24006 INCR BBANK
035979,000675: 31,3255 E7,1642 EBANK= TTF/8
035980,000676: 31,3255 61642 AD TTF/8
035981,000677: 31,3256 56001 XCH L
035982,000678: 31,3257 61642 AD TTF/8
035983,000679: 31,3260 10000 CCS A
035984,000680: 31,3261 10001 CCS L
035985,000681: 31,3262 13313 TCF EXTLOGIC
035986,000682: 31,3263 13313 TCF EXTLOGIC
035987,000683: 31,3264 13265 NOOP
035988,000684:
035989,000685: 31,3265 03677 TC INTPRETX
035990,000686: 31,3266 53575 VLOAD UNIT
035991,000687: 31,3267 03635 LAND
035992,000688: 31,3270 16603 STODL CG
035993,000689: 31,3271 03643 TTF/8
035994,000690: 31,3272 74203 DMP* VXSC
035995,000691: 31,3273 02433 GAINBRAK,1 # NUMERO MYSTERIOSO
035996,000692: 31,3274 02265 ANGTERM
035997,000693: 31,3275 77655 VAD
035998,000694: 31,3276 03635 LAND
035999,000695: 31,3277 47051 VSU RTB
036000,000696: 31,3300 03521 R
036001,000697: 31,3301 21726 NORMUNIT
![]() |
Page 811 |
036003,000699: 31,3302 47035 VXV RTB
036004,000700: 31,3303 03635 LAND
036005,000701: 31,3304 21726 NORMUNIT
036006,000702: 31,3305 26611 STOVL CG +6 # SECOND ROW
036007,000703: 31,3306 02603 CG
036008,000704: 31,3307 76435 VXV VSL1
036009,000705: 31,3310 02611 CG +6
036010,000706: 31,3311 02617 STORE CG +14
036011,000707: 31,3312 77776 EXIT
036012,000708:
036013,000709: # (CONTINUE TO EXTLOGIC)
036014,000710:
036015,000711: # ****************************************************************************************************************
036016,000712: # PREPARE TO EXIT
036017,000713: # ****************************************************************************************************************
036018,000714:
036019,000715: # DECIDE (1) HOW TO EXIT, AND (2) WHETHER TO SWITCH PHASES
036020,000716:
036021,000717: 31,3313 51351 EXTLOGIC INDEX WCHPHASE # WCHPHASE = 1 APPRQUAD
036022,000718: 31,3314 31423 CA TENDBRAK # WCHPHASE = 0 BRAKQUAD
036023,000719: 31,3315 61642 AD TTF/8
036024,000720:
036025,000721: 31,3316 00006 EXSPOT1 EXTEND
036026,000722: 31,3317 51351 INDEX WCHPHASE
036027,000723: 31,3320 62441 BZMF WHATEXIT
036028,000724:
036029,000725: 31,3321 03740 TC FASTCHNG
036030,000726:
036031,000727: 31,3322 31621 CA WCHPHOLD
036032,000728: 31,3323 64753 AD ONE
036033,000729: 31,3324 55351 TS WCHPHASE
036034,000730: 31,3325 34755 CA ZERO
036035,000731: 31,3326 55623 TS FLPASS0 # RESET FLPASS0
036036,000732:
036037,000733: 31,3327 51621 INDEX WCHPHOLD
036038,000734: 31,3330 12441 TCF WHATEXIT
036039,000735:
036040,000736: # ****************************************************************************************************************
036041,000737: # ROUTINES FOR EXITING FROM LANDING GUIDANCE
036042,000738: # ****************************************************************************************************************
036043,000739:
036044,000740: # 1. EXGSUB IS THE RETURN WHEN GUIDSUB IS CALLED BY THE IGNITION ALGORITHM.
036045,000741: # 2. EXBRAK IN THE EXIT USED DURING THE BRAKING PHASE. IN THIS CASE UNIT(R) IS THE WINDOW POINTING VECTOR.
036046,000742: # 3. EXNORM IS THE EXIT USED AT OTHER TIMES DURING THE BURN.
036047,000743: # (EXOVFLOW IS A SUBROUTINE OF EXBRAK AND EXNORM CALLED WHEN OVERFLOW OCCURRED ANYWHERE IN GUIDANCE.)
036048,000744:
036049,000745: 31,3331 06037 EXGSUB TC INTPRET # COMPUTE TRIM VELOCITY CORRECTION TERM
![]() |
Page 812 |
036051,000747: 31,3332 47175 VLOAD RTB
036052,000748: 31,3333 03254 UNFC/2
036053,000749: 31,3334 21726 NORMUNIT
036054,000750: 31,3335 74361 VXSC VXSC
036055,000751: 31,3336 03423 ZOOMTIME
036056,000752: 31,3337 22001 TRIMACCL
036057,000753: 31,3340 03254 STORE UNFC/2
036058,000754: 31,3341 77776 EXIT
036059,000755:
036060,000756: 31,3342 11647 CCS NGUIDSUB
036061,000757: 31,3343 12460 TCF GUIDSUB
036062,000758: 31,3344 11646 CCS NIGNLOOP
036063,000759: 31,3345 13350 TCF +3
036064,000760: 31,3346 05567 TC ALARM
036065,000761: 31,3347 01412 OCT 01412
036066,000762:
036067,000763: 31,3350 04635 +3 TC POSTJUMP
036068,000764: 31,3351 65102 CADR DDUMCALC
036069,000765:
036070,000766: 31,3352 06037 EXBRAK TC INTPRET
036071,000767: 31,3353 77775 VLOAD
036072,000768: 31,3354 03537 UNIT/R/
036073,000769: 31,3355 03262 STORE UNWC/2
036074,000770: 31,3356 77776 EXIT
036075,000771: 31,3357 13432 TCF STEER?
036076,000772:
036077,000773: 31,3360 06037 EXNORM TC INTPRET
036078,000774: 31,3361 52375 VLOAD VSU
036079,000775: 31,3362 03635 LAND
036080,000776: 31,3363 03521 R
036081,000777: 31,3364 77634 RTB
036082,000778: 31,3365 21726 NORMUNIT
036083,000779: 31,3366 03262 STORE UNWC/2 # UNIT(LAND - R) IS TENTATIVE CHOICE
036084,000780: 31,3367 50235 VXV DOT
036085,000781: 31,3370 02146 XNBPIP
036086,000782: 31,3371 02611 CG +6
036087,000783: 31,3372 77776 EXIT # WITH PROJ IN MPAC 1/8 REAL SIZE
036088,000784:
036089,000785: 31,3373 40154 CS MPAC # GET COEFFICIENT FOR CG +14
036090,000786: 31,3374 63754 AD PROJMAX
036091,000787: 31,3375 64733 AD POSMAX
036092,000788: 31,3376 54130 TS BUF
036093,000789: 31,3377 40130 CS BUF
036094,000790: 31,3400 26130 ADS BUF # RESULT IS 0 IF PROJMAX - PROJ NEGATIVE
036095,000791:
036096,000792: 31,3401 43755 CS PROJMIN # GET COEFFICIENT FOR UNIT(LAND - R)
036097,000793: 31,3402 60154 AD MPAC
036098,000794: 31,3403 64733 AD POSMAX
036099,000795: 31,3404 54131 TS BUF +1
036100,000796: 31,3405 40131 CS BUF +1
![]() |
Page 813 |
036102,000798: 31,3406 26131 ADS BUF +1 # RESULT IS 0 IF PROJ - PROJMIN NEGATIVE
036103,000799:
036104,000800: 31,3407 34751 CAF FOUR
036105,000801: 31,3410 76242 UNWCLOOP MASK SIX
036106,000802: 31,3411 54002 TS Q
036107,000803: 31,3412 35014 CA EBANK5
036108,000804: 31,3413 54003 TS EBANK
036109,000805: 31,3414 E5,1602 EBANK= CG
036110,000806: 31,3414 30130 CA BUF
036111,000807: 31,3415 00006 EXTEND
036112,000808: 31,3416 50002 INDEX Q
036113,000809: 31,3417 71616 MP CG +14
036114,000810: 31,3420 24006 INCR BBANK
036115,000811: 31,3421 E6,1661 EBANK= UNWC/2
036116,000812: 31,3421 50002 INDEX Q
036117,000813: 31,3422 53662 DXCH UNWC/2
036118,000814: 31,3423 00006 EXTEND
036119,000815: 31,3424 70131 MP BUF +1
036120,000816: 31,3425 50002 INDEX Q
036121,000817: 31,3426 21662 DAS UNWC/2
036122,000818: 31,3427 10002 CCS Q
036123,000819: 31,3430 13410 TCF UNWCLOOP
036124,000820:
036125,000821: 31,3431 24006 INCR BBANK
036126,000822: 31,3432 E7,1612 EBANK= PIF
036127,000823:
036128,000824: 31,3432 30076 STEER? CA FLAGWRD2 # IF STEERSW DOWN NO OUTPUTS
036129,000825: 31,3433 74741 MASK STEERBIT
036130,000826: 31,3434 00006 EXTEND
036131,000827: 31,3435 13443 BZF RATESTOP
036132,000828:
036133,000829: 31,3436 30121 EXVERT CA OVFIND # IF OVERFLOW ANYWHERE IN GUIDANCE
036134,000830: 31,3437 00006 EXTEND # DON'T CALL THROTTLE OR FINDCDUW
036135,000831: 31,3440 13453 BZF +13
036136,000832:
036137,000833: 31,3441 05567 EXOVFLOW TC ALARM # SOUND THE ALARM NON-ABORTIVELY.
036138,000834: 31,3442 01410 OCT 01410
036139,000835:
036140,000836: 31,3443 34737 RATESTOP CAF BIT13 # ARE WE IN ATTITUDE-HOLD?
036141,000837: 31,3444 00006 EXTEND
036142,000838: 31,3445 02031 RAND CHAN31
036143,000839: 31,3446 00006 EXTEND
036144,000840: 31,3447 13460 BZF DISPEXIT # YES
036145,000841:
036146,000842: 31,3450 04616 TC BANKCALL # NO: DO A STOPRATE
036147,000843: 31,3451 40165 CADR STOPRATE
036148,000844:
036149,000845: 31,3452 13460 TCF DISPEXIT
036150,000846:
036151,000847: 31,3453 02216 GDUMP1 TC THROTTLE
![]() |
Page 814 |
036153,000849: 31,3454 06037 TC INTPRET
036154,000850: 31,3455 77624 CALL
036155,000851: 31,3456 61111 FINDCDUW -2
036156,000852: 31,3457 77776 EXIT
036157,000853:
036158,000854: # (CONTINUE TO DISPEXIT)
036159,000855:
036160,000856: # ****************************************************************************************************************
036161,000857: # GUIDANCE LOOP DISPLAYS
036162,000858: # ****************************************************************************************************************
036163,000859:
036164,000860: 31,3460 00006 DISPEXIT EXTEND # KILL GROUP 3: DISPLAYS WILL BE
036165,000861: 31,3461 34755 DCA NEG0 # RESTORED BY NEXT GUIDANCE CYCLE
036166,000862: 31,3462 52757 DXCH -PHASE3
036167,000863:
036168,000864: 31,3463 40104 +3 CS FLAGWRD8 # IF FLUNDISP IS SET, NO DISPLAY THIS PASS
036169,000865: 31,3464 74742 MASK FLUNDBIT
036170,000866: 31,3465 00006 EXTEND
036171,000867: 31,3466 13476 BZF ENDLLJOB # TO PICK UP THE TAG
036172,000868:
036173,000869: 31,3467 51621 INDEX WCHPHOLD
036174,000870: 31,3470 12443 TCF WHATDISP
036175,000871:
036176,000872: 31,3471 05353 -2 TC PHASCHNG # KILL GROUP 5
036177,000873: 31,3472 00035 OCT 00035
036178,000874:
036179,000875: 31,3473 33756 P63DISPS CAF V06N63
036180,000876: 31,3474 04616 DISPCOMN TC BANKCALL
036181,000877: 31,3475 20470 CADR REGODSPR
036182,000878:
036183,000879: 31,3476 15155 ENDLLJOB TCF ENDOFJOB
036184,000880:
036185,000881: 31,3477 31666 P64DISPS CA TREDES # HAS TREDES REACHED ZERO?
036186,000882: 31,3500 00006 EXTEND
036187,000883: 31,3501 13523 BZF RED-OVER # YES: CLEAR REDESIGNATION FLAG
036188,000884:
036189,000885: 31,3502 40102 CS FLAGWRD6 # NO: IS REDFLAG SET?
036190,000886: 31,3503 74746 MASK REDFLBIT
036191,000887: 31,3504 00006 EXTEND
036192,000888: 31,3505 13525 BZF REDES-OK # YES: DO STATIC DISPLAY
036193,000889:
036194,000890: 31,3506 33757 CAF V06N64 # OTHERWISE USE FLASHING DISPLAY
036195,000891: 31,3507 04616 TC BANKCALL
036196,000892: 31,3510 20462 CADR REFLASHR
036197,000893: 31,3511 16001 TCF GOTOPOOH # TERMINATE
036198,000894: 31,3512 13515 TCF P64CEED # PROCEED PERMIT REDESIGNATIONS
036199,000895: 31,3513 13477 TCF P64DISPS # RECYCLE
![]() |
Page 815 |
036201,000897: 31,3514 13476 TCF ENDLLJOB # TO PICK UP THE TAG
036202,000898:
036203,000899: 31,3515 34755 P64CEED CAF ZERO
036204,000900: 31,3516 55267 TS ELINCR1
036205,000901: 31,3517 55266 TS AZINCR1
036206,000902:
036207,000903: 31,3520 05504 TC UPFLAG # ENABLE REDESIGNATION LOGIC
036208,000904: 31,3521 00143 ADRES REDFLAG
036209,000905:
036210,000906: 31,3522 15155 TCF ENDOFJOB
036211,000907:
036212,000908: 31,3523 05516 RED-OVER TC DOWNFLAG
036213,000909: 31,3524 00143 ADRES REDFLAG
036214,000910: 31,3525 33757 REDES-OK CAF V06N64
036215,000911: 31,3526 13474 TCF DISPCOMN
036216,000912:
036217,000913:
036218,000914: 31,3527 33760 VERTDISP CAF V06N60
036219,000915: 31,3530 13474 TCF DISPCOMN
036220,000916:
036221,000917:
036222,000918: # ****************************************************************************************************************
036223,000919: # GUIDANCE FOR P65
036224,000920: # ****************************************************************************************************************
036225,000921:
036226,000922: 31,3531 11647 VERTGUID CCS WCHVERT
036227,000923: 31,3532 13545 TCF P67VERT # POSITIVE NON-ZERO ---> P67
036228,000924: 31,3533 13543 TCF P66VERT # +0
036229,000925:
036230,000926: # THE P65 GUIDANCE EQUATION IS AS FOLLOWS:-
036231,000927: # - -
036232,000928: # V2FG - VGU
036233,000929: # ACG = ----------
036234,000930: # TAUVERT
036235,000931:
036236,000932: 31,3534 06037 P65VERT TC INTPRET
036237,000933: 31,3535 52375 VLOAD VSU
036238,000934: 31,3536 02511 V2FG
036239,000935: 31,3537 03627 VGU
036240,000936: 31,3540 52141 V/SC GOTO
036241,000937: 31,3541 02517 TAUVERT
036242,000938: 31,3542 63204 AFCCALC1
![]() |
Page 816 |
036244,000940: # ****************************************************************************************************************
036245,000941: # GUIDANCE FOR P66
036246,000942: # ****************************************************************************************************************
036247,000943:
036248,000944: 31,3543 04635 P66VERT TC POSTJUMP
036249,000945: 31,3544 65270 CADR P66VERTA
036250,000946:
036251,000947: 31,3545 05353 P67VERT TC PHASCHNG # TERMINATE GROUP 3
036252,000948: 31,3546 00003 OCT 00003
036253,000949:
036254,000950: 31,3547 06037 TC INTPRET
036255,000951: 31,3550 52175 VLOAD GOTO
036256,000952: 31,3551 03527 V
036257,000953: 31,3552 65517 VHORCOMP
036258,000954:
036259,000955: 32,2000 SETLOC P66LOC
036260,000956: 32,2000 BANK
036261,000957: 32,3263 COUNT* $$/F2DPS
036262,000958:
036263,000959: 32,3263 37710 RODTASK CAF PRIO22
036264,000960: 32,3264 05105 TC FINDVAC
036265,000961: 32,3265 E7,1515 EBANK= DVCNTR
036266,000962: 32,3265 03275 64067 2CADR RODCOMP
036267,000963:
036268,000964: 32,3267 15261 TCF TASKOVER
036269,000965:
036270,000966: 32,3270 05353 P66VERTA TC PHASCHNG # TERMINATE GROUP 3.
036271,000967: 32,3271 00003 OCT 00003
036272,000968:
036273,000969: 32,3272 34777 CAF 1SEC
036274,000970: 32,3273 05173 TC TWIDDLE
036275,000971: 32,3274 03263 ADRES RODTASK
036276,000972:
036277,000973: 32,3275 00004 RODCOMP INHINT
036278,000974: 32,3276 34755 CAF ZERO
036279,000975: 32,3277 57746 XCH RODCOUNT
036280,000976: 32,3300 00006 EXTEND
036281,000977: 32,3301 71756 MP RODSCAL1
036282,000978: 32,3302 21645 DAS VDGVERT # UPDATE DESIRED ALTITUDE RATE.
036283,000979:
036284,000980: 32,3303 00006 EXTEND # SET OLDPIPAX,Y,Z = PIPAX,Y,Z
036285,000981: 32,3304 30040 DCA PIPAX
036286,000982: 32,3305 53764 DXCH OLDPIPAX
036287,000983: 32,3306 52071 DXCH RUPTREG1 # SET RUPTREG1,2,3 = OLDPIPAX,Y,Z
036288,000984: 32,3307 30041 CA PIPAZ
036289,000985: 32,3310 57765 XCH OLDPIPAZ
036290,000986: 32,3311 56072 XCH RUPTREG3
036291,000987:
036292,000988: 32,3312 00006 EXTEND # SHAPSHOT TIME OF PIPA READING.
036293,000989: 32,3313 30025 DCA TIME2
![]() |
Page 817 |
036295,000991: 32,3314 53762 DXCH THISTPIP
036296,000992:
036297,000993: 32,3315 31763 CA OLDPIPAX
036298,000994: 32,3316 61160 AD PIPATMPX
036299,000995: 32,3317 54154 TS MPAC # MPAC(X) = PIPAX + PIPATMPX
036300,000996: 32,3320 31764 CA OLDPIPAY
036301,000997: 32,3321 61161 AD PIPATMPY
036302,000998: 32,3322 54157 TS MPAC +3 # MPAC(Y) = PIPAY + PIPATMPY
036303,000999: 32,3323 31765 CA OLDPIPAZ
036304,001000: 32,3324 61162 AD PIPATMPZ
036305,001001: 32,3325 54161 TS MPAC +5 # MPAC(Z) = PIPAZ + PIPATMPZ
036306,001002:
036307,001003: 32,3326 41763 CS OLDPIPAX
036308,001004: 32,3327 61254 AD TEMX
036309,001005: 32,3330 60070 AD RUPTREG1
036310,001006: 32,3331 55766 TS DELVROD
036311,001007: 32,3332 41764 CS OLDPIPAY
036312,001008: 32,3333 61255 AD TEMY
036313,001009: 32,3334 60071 AD RUPTREG2
036314,001010: 32,3335 55770 TS DELVROD +2
036315,001011: 32,3336 41765 CS OLDPIPAZ
036316,001012: 32,3337 61256 AD TEMZ
036317,001013: 32,3340 60072 AD RUPTREG3
036318,001014: 32,3341 55772 TS DELVROD +4
036319,001015:
036320,001016: 32,3342 34755 CAF ZERO
036321,001017: 32,3343 54155 TS MPAC +1 # ZERO LO-ORDER MPAC COMPONENTS
036322,001018: 32,3344 54160 TS MPAC +4
036323,001019: 32,3345 54162 TS MPAC +6
036324,001020: 32,3346 55254 TS TEMX # ZERO TEMX, TEMY, AND TEMZ SO WE WILL
036325,001021: 32,3347 55255 TS TEMY # KNOW WHEN READACCS CHANGES THEM.
036326,001022: 32,3350 55256 TS TEMZ
036327,001023: 32,3351 44753 CS ONE
036328,001024: 32,3352 54163 TS MODE
036329,001025: 32,3353 06037 TC INTPRET
036330,001026: 32,3354 65361 ITRPNT1 VXSC PDDL # SCALE MPAC TO M/CS *2(-7) AND PUSH (6)
036331,001027: 32,3355 26022 KPIP1
036332,001028: 32,3356 03762 THISTPIP
036333,001029: 32,3357 77625 DSU
036334,001030: 32,3360 01235 PIPTIME
036335,001031: 32,3361 00037 STORE 30D # 30-31D CONTAINS TIME IN CS SINCE PIPTIME
036336,001032: 32,3362 63271 DDV PDVL # (8)
036337,001033: 32,3363 27153 4SEC(28)
036338,001034: 32,3364 01237 GDT/2
036339,001035: 32,3365 74251 VSU VXSC # (6)
036340,001036: 32,3366 02631 VBIAS
036341,001037: 32,3367 53352 VSL2 VAD
036342,001038: 32,3370 03527 V
036343,001039: 32,3371 45455 VAD STADR # (0)
036344,001040: 32,3372 53746 STOVL 24D # STORE UPDATED VELOCITY IN 24-29D
![]() |
Page 818 |
036346,001042: 32,3373 03521 R
036347,001043: 32,3374 77656 UNIT
036348,001044: 32,3375 00017 STORE 14D
036349,001045: 32,3376 72441 DOT SL1
036350,001046: 32,3377 00031 24D
036351,001047: 32,3400 17474 STODL HDOTDISP # UPDATE HDOTDISP FOR NOUN 63.
036352,001048: 32,3401 00037 30D
036353,001049: 32,3402 41261 SL DMP
036354,001050: 32,3403 20214 11D
036355,001051: 32,3404 03474 HDOTDISP
036356,001052: 32,3405 45215 DAD DSU
036357,001053: 32,3406 00045 36D
036358,001054: 32,3407 02333 /LAND/
036359,001055: 32,3410 17775 STODL HCALC1 # UPDATE HCALC1 FOR NOUN 63.
036360,001056: 32,3411 03474 HDOTDISP
036361,001057: 32,3412 56221 BDSU DDV
036362,001058: 32,3413 03645 VDGVERT
036363,001059: 32,3414 02541 TAUROD
036364,001060: 32,3415 51515 PDVL ABVAL # (2)
036365,001061: 32,3416 01237 GDT/2
036366,001062: 32,3417 60471 DDV SR2
036367,001063: 32,3420 05652 GSCALE
036368,001064: 32,3421 00025 STORE 20D
036369,001065: 32,3422 77615 DAD # (0)
036370,001066: 32,3423 45115 PDVL CALL # (2)
036371,001067: 32,3424 06520 UNITX
036372,001068: 32,3425 47661 CDU*NBSM
036373,001069: 32,3426 77641 DOT
036374,001070: 32,3427 00017 14D
036375,001071: 32,3430 00027 STORE 22D
036376,001072: 32,3431 45465 BDDV STADR # (0)
036377,001073: 32,3432 50313 STOVL /AFC/
036378,001074: 32,3433 03767 DELVROD
036379,001075: 32,3434 53361 VXSC VAD
036380,001076: 32,3435 26022 KPIP1
036381,001077: 32,3436 02631 VBIAS
036382,001078: 32,3437 65246 ABVAL PDDL # (2)
036383,001079: 32,3440 03762 THISTPIP
036384,001080: 32,3441 65225 DSU PDDL # (4)
036385,001081: 32,3442 03760 LASTTPIP
036386,001082: 32,3443 03762 THISTPIP
036387,001083: 32,3444 17760 STODL LASTTPIP # (2)
036388,001084: 32,3445 55271 DDV BDDV # (0)
036389,001085: 32,3446 25535 SHFTFACT
036390,001086: 32,3447 41325 PDDL DMP # (2)
036391,001087: 32,3450 03611 FWEIGHT
036392,001088: 32,3451 25534 BIT1H
036393,001089: 32,3452 56271 DDV DDV
036394,001090: 32,3453 01245 MASS
036395,001091: 32,3454 22006 SCALEFAC
![]() |
Page 819 |
036397,001093: 32,3455 65215 DAD PDDL # (4)
036398,001094: 32,3456 00001 0D
036399,001095: 32,3457 00025 20D
036400,001096: 32,3460 45271 DDV DSU # (2)
036401,001097: 32,3461 00027 22D
036402,001098: 32,3462 43205 DMP DAD
036403,001099: 32,3463 02543 LAG/TAU
036404,001100: 32,3464 03464 /AFC/
036405,001101: 32,3465 56325 PDDL DDV # (4)
036406,001102: 32,3466 02547 MAXFORCE
036407,001103: 32,3467 01245 MASS
036408,001104: 32,3470 56325 PDDL DDV # (6)
036409,001105: 32,3471 02545 MINFORCE
036410,001106: 32,3472 01245 MASS
036411,001107: 32,3473 44206 PUSH BDSU # (8)
036412,001108: 32,3474 00003 2D
036413,001109: 32,3475 71240 BMN DLOAD # (6)
036414,001110: 32,3476 65504 AFCSPOT
036415,001111: 32,3477 41545 DLOAD PUSH # (6)
036416,001112: 32,3500 51021 BDSU BPL
036417,001113: 32,3501 00003 2D
036418,001114: 32,3502 65504 AFCSPOT
036419,001115: 32,3503 77745 DLOAD # (4)
036420,001116: 32,3504 77745 AFCSPOT DLOAD # (2), (4), OR (6)
036421,001117: 32,3505 77601 SETPD # (2)
036422,001118: 32,3506 00003 2D
036423,001119: 32,3507 17464 STODL /AFC/ # (0)
036424,001120: 32,3510 77776 ITRPNT2 EXIT
036425,001121: 32,3511 52155 DXCH MPAC # MPAC = MEASURED ACCELERATION.
036426,001122: 32,3512 04616 TC BANKCALL
036427,001123: 32,3513 62221 CADR THROTTLE +3
036428,001124: 32,3514 06037 TC INTPRET
036429,001125: 32,3515 77775 VLOAD # PICK UP UPDATED VELOCITY VECTOR.
036430,001126: 32,3516 00031 24D
036431,001127: 32,3517 53352 VHORCOMP VSL2 VAD
036432,001128: 32,3520 03734 DELVS
036433,001129: 32,3521 63342 VSR2 PDVL # (6)
036434,001130: 32,3522 03521 R
036435,001131: 32,3523 74256 UNIT VXSC
036436,001132: 32,3524 03474 HDOTDISP
036437,001133: 32,3525 51372 VSL1 BVSU # (0)
036438,001134: 32,3526 77646 ABVAL
036439,001135: 32,3527 02263 STORE VHORIZ
036440,001136: 32,3530 77776 EXIT
036441,001137: 32,3531 04616 TC BANKCALL # PUT UP V06N60 DISPLAY BUT AVOID PHASCHNG
036442,001138: 32,3532 63463 CADR DISPEXIT +3
036443,001139:
036444,001140: 32,3533 00001 BIT1H OCT 00001
036445,001141: 32,3534 00000 04000 SHFTFACT 2DEC 1 B-17
![]() |
Page 820 |
036447,001143: 32,3536 00000 01217 BIASFACT 2DEC 655.36 B-28
036448,001144:
036449,001145: # ****************************************************************************************************************
036450,001146: # REDESIGNATOR TRAP
036451,001147: # ****************************************************************************************************************
036452,001148:
036453,001149: 11,2275 BANK 11
036454,001150: 11,2000 SETLOC F2DPS*11
036455,001151: 11,2000 BANK
036456,001152:
036457,001153: 11,2275 COUNT* $$/F2DPS
036458,001154:
036459,001155: 11,2275 56016 PITFALL XCH BANKRUPT
036460,001156: 11,2276 00006 EXTEND
036461,001157: 11,2277 22012 QXCH QRUPT
036462,001158:
036463,001159: 11,2300 05321 TC CHECKMM # IF NOT IN P64, NO REASON TO CONTINUE
036464,001160: 11,2301 00100 DEC 64 B-14
036465,001161: 11,2302 15270 TCF RESUME
036466,001162:
036467,001163: 11,2303 00006 EXTEND
036468,001164: 11,2304 00031 READ CHAN31
036469,001165: 11,2305 40000 COM
036470,001166: 11,2306 72373 MASK ALL4BITS
036471,001167: 11,2307 55265 TS ELVIRA
036472,001168: 11,2310 34752 CAF TWO
036473,001169: 11,2311 55264 TS ZERLINA
036474,001170: 11,2312 34756 CAF FIVE
036475,001171: 11,2313 05173 TC TWIDDLE
036476,001172: 11,2314 02321 ADRES REDESMON
036477,001173: 11,2315 15270 TCF RESUME
036478,001174:
036479,001175: # REDESIGNATION MONITOR (INITIATED BY PITFALL)
036480,001176:
036481,001177: 11,2316 55264 PREMON1 TS ZERLINA
036482,001178: 11,2317 34757 PREMON2 CAF SEVEN
036483,001179: 11,2320 05224 TC VARDELAY
036484,001180: 11,2321 00006 REDESMON EXTEND
036485,001181: 11,2322 00031 READ 31
036486,001182: 11,2323 40000 COM
036487,001183: 11,2324 72373 MASK ALL4BITS
036488,001184: 11,2325 57265 XCH ELVIRA
036489,001185: 11,2326 54001 TS L
036490,001186: 11,2327 11265 CCS ELVIRA # DO ANY BITS APPEAR THIS PASS?
036491,001187: 11,2330 12317 TCF PREMON2 # Y: CONTINUE MONITOR
036492,001188:
036493,001189: 11,2331 10001 CCS L # N: ANY LAST PASS?
036494,001190: 11,2332 12341 TCF COUNT'EM # Y: COUNT 'EM, RESET RUPT, TERMINATE
![]() |
Page 821 |
036496,001192: 11,2333 11264 CCS ZERLINA # N: HAS ZERLINA REACHED ZERO YET?
036497,001193: 11,2334 12316 TCF PREMON1 # N: DIMINISH ZERLINA, CONTINUE
036498,001194: 11,2335 34740 RESETRPT CAF BIT12 # Y: RESET RUPT, TERMINATE
036499,001195: 11,2336 00006 EXTEND
036500,001196: 11,2337 05013 WOR CHAN13
036501,001197: 11,2340 15261 TCF TASKOVER
036502,001198:
036503,001199: 11,2341 34737 COUNT'EM CAF BIT13 # ARE WE IN ATTITUDE-HOLD?
036504,001200: 11,2342 00006 EXTEND
036505,001201: 11,2343 02031 RAND CHAN31
036506,001202: 11,2344 00006 EXTEND
036507,001203: 11,2345 12335 BZF RESETRPT # YES: SKIP REDESIGNATION LOGIC.
036508,001204:
036509,001205: 11,2346 30001 CA L # NO
036510,001206: 11,2347 74746 MASK -AZBIT
036511,001207: 11,2350 10000 CCS A
036512,001208: 11,2351 42374 -AZ CS AZEACH
036513,001209: 11,2352 27266 ADS AZINCR1
036514,001210: 11,2353 30001 CA L
036515,001211: 11,2354 74747 MASK +AZBIT
036516,001212: 11,2355 10000 CCS A
036517,001213: 11,2356 32374 +AZ CA AZEACH
036518,001214: 11,2357 27266 ADS AZINCR1
036519,001215: 11,2360 30001 CA L
036520,001216: 11,2361 74753 MASK -ELBIT
036521,001217: 11,2362 10000 CCS A
036522,001218: 11,2363 42375 -EL CS ELEACH
036523,001219: 11,2364 27267 ADS ELINCR1
036524,001220: 11,2365 30001 CA L
036525,001221: 11,2366 74752 MASK +ELBIT
036526,001222: 11,2367 10000 CCS A
036527,001223: 11,2370 32375 +EL CA ELEACH
036528,001224: 11,2371 27267 ADS ELINCR1
036529,001225: 11,2372 12335 TCF RESETRPT
036530,001226:
036531,001227: # THESE EQUIVALENCIES ARE BASED ON GSOP CHAPTER 4, REVISION 16 OF P64LM
036532,001228:
036533,001229: 11,2373 4752 +ELBIT = BIT2 # -PITCH
036534,001230: 11,2373 4753 -ELBIT = BIT1 # +PITCH
036535,001231: 11,2373 4747 +AZBIT = BIT5
036536,001232: 11,2373 4746 -AZBIT = BIT6
036537,001233:
![]() |
Page 822 |
036539,001235: 11,2373 00063 ALL4BITS OCT 00063
036540,001236: 11,2374 01074 AZEACH DEC .03491 # 2 DEGREES
036541,001237: 11,2375 00217 ELEACH DEC .00873 # 1/2 DEGREE
036542,001238:
036543,001239: # ****************************************************************************************************************
036544,001240: # R.O.D. TRAP
036545,001241: # ************************************************************************
036546,001242:
036547,001243: 20,2115 BANK 20
036548,001244: 20,2000 SETLOC RODTRAP
036549,001245: 20,2000 BANK
036550,001246: 20,2115 COUNT* $$/F2DPS # ****************************************
036551,001247:
036552,001248: 20,2115 74745 DESCBITS MASK BIT7 # COME HERE FROM MARKRUPT CODING WITH BIT
036553,001249: 20,2116 10000 CCS A # 7 OR 6 OF CHANNEL 16 IN A: BIT 7 MEANS
036554,001250: 20,2117 44752 CS TWO # - RATE INCREMENT, BIT 6 + INCREMENT
036555,001251: 20,2120 64753 AD ONE
036556,001252: 20,2121 27746 ADS RODCOUNT
036557,001253: 20,2122 15270 TCF RESUME # TRAP IS RESET WHEN SWITCH IS RELEASED
036558,001254:
036559,001255: 31,3553 BANK 31
036560,001256: 31,2000 SETLOC F2DPS*31
036561,001257: 31,2000 BANK
036562,001258:
036563,001259: 31,3553 COUNT* $$/F2DPS
036564,001260:
036565,001261: # ****************************************************************************************************************
036566,001262: # DOUBLE PRECISION ROOT FINDER SUBROUTINE (BY ALLAN KLUMPP)
036567,001263: # ****************************************************************************************************************
036568,001264:
036569,001265: # N N-1
036570,001266: # ROOTPSRS FINDS ONE ROOT OF THE POWER SERIES A X + A X + ... + A X + A
036571,001267: # N N-1 1 0
036572,001268: # USING NEWTON'S METHOD STARTING WITH AN INITIAL GUESS FOR THE ROOT. THE ENTERING DATA MUST BE AS FOLLOWS:
036573,001269: # A SP LOC-3 ADRES FOR REFERENCING PWR COF TABL
036574,001270: # L SP N-1 N IS THE DEGREE OF THE POWER SERIES
036575,001271: # MPAC DP X INITIAL GUESS FOR ROOT
036576,001272:
036577,001273: # LOC-2N DP A(0)
036578,001274: # ...
036579,001275: # LOC DP A(N)
036580,001276: # LOC+2 SP PRECROOT PREC RQD OF ROOT (AS FRACT OF 1ST GUESS)
036581,001277:
![]() |
Page 823 |
036583,001279: # THE DP RESULT IS LEFT IN MPAC UPON EXIT, AND A SP COUNT OF THE ITERATIONS TO CONVERGENCE IS LEFT IN MPAC+2.
036584,001280: # RETURN IS NORMALLY TO LOC(TC ROOTPSRS)+3. IF ROOTPSRS FAILS TO CONVERGE IN 8 PASSES, RETURN IS TO LOC+1 AND
036585,001281: # OUTPUTS ARE NOT TO BE TRUSTED.
036586,001282:
036587,001283: # PRECAUTION: ROOTPSRS MAKES NO CHECKS FOR OVERFLOW OR FOR IMPROPER USAGE. IMPROPER USAGE COULD
036588,001284: # PRECLUDE CONVERGENCE OR REQUIRE EXCESSIVE ITERATIONS. AS A SPECIFIC EXAMPLE, ROOTPSRS FORMS A DERIVATIVE
036589,001285: # COEFFICIENT TABLE BY MULTIPLYING EACH A(I) BY I, WHERE I RANGES FROM 1 TO N. IF AN ELEMENT OF THE DERIVATIVE
036590,001286: # COEFFICIENT TABLE = 1 OR >1 IN MAGNITUDE, ONLY THE EXCESS IS RETAINED. ROOTPSRS MAY CONVERGE ON THE CORRECT
036591,001287: # ROOT NONETHELESS, BUT IT MAY TAKE AN EXCESSIVE NUMBER OF ITERATIONS. THEREFORE THE USER SHOULD RECOGNIZE:
036592,001288: # 1. USER'S RESPONSIBILITY TO ASSURE THAT I X A(I) < 1 IN MAGNITUDE FOR ALL I.
036593,001289: # 2. USER'S RESPONSIBILITY TO ASSURE OVERFLOW WILL NOT OCCUR IN EVALUATING EITHER THE RESIDUAL OR THE DERIVATIVE
036594,001290: # POWER SERIES. THIS OVERFLOW WOULD BE PRODUCED BY SUBROUTINE POWRSERS, CALLED BY ROOTPSRS, AND MIGHT NOT
036595,001291: # PRECLUDE EVENTUAL CONVERGENCE.
036596,001292: # 3. AT PRESENT, ERASABLE LOCATIONS ARE RESERVED ONLY FOR N UP TO 5. AN N IN EXCESS OF 5 WILL PRODUCE CHAOS.
036597,001293: # ALL ERASABLES USED BY ROOTPSRS ARE UNSWITCHED LOCATED IN THE REGION FROM MPAC-33 OCT TO MPAC+7.
036598,001294: # 4. THE ITERATION COUNT RETURNED IN MPAC+2 MAY BE USED TO DETECT ABNORMAL PERFORMANCE.
036599,001295:
036600,001296: # STORE ENTERING DATA, INITLIZE ERASABLES
036601,001297: 31,3553 00006 ROOTPSRS EXTEND
036602,001298: 31,3554 22132 QXCH RETROOT # RETURN ADRES
036603,001299: 31,3555 54117 TS PWRPTR # PWR TABL POINTER
036604,001300: 31,3556 52160 DXCH MPAC +3 # PWR TABL ADRES, N-1
036605,001301: 31,3557 33676 CA DERTABLL
036606,001302: 31,3560 54141 TS DERPTR # DER TABL POINTER
036607,001303: 31,3561 54161 TS MPAC +5 # DER TABL ADRES
036608,001304: 31,3562 10160 CCS MPAC +4 # NO POWER SERIES OF DEGREE 1 OR LESS
036609,001305: 31,3563 54162 TS MPAC +6 # N-2
036610,001306: 31,3564 34755 CA ZERO # MODE USED AS ITERATION COUNTER. MODE
036611,001307: 31,3565 54163 TS MODE # MUST BE POS SO ABS WON'T COMP MPAC+3 ETC
036612,001308:
036613,001309: # COMPUTE CRITERION TO STOP ITERATING
036614,001310: 31,3566 00006 EXTEND
036615,001311: 31,3567 30155 DCA MPAC # FETCH ROOT GUESS, KEEPING IT IN MPAC
036616,001312: 31,3570 52127 DXCH ROOTPS # AND IN ROOTPS
036617,001313: 31,3571 50157 INDEX MPAC +3 # PWR TABL ADRES
036618,001314: 31,3572 30005 CA 5 # PRECROOT TO A
036619,001315: 31,3573 07307 TC SHORTMP # YIELDS DP PRODUCT IN MPAC
036620,001316: 31,3574 04713 TC USPRCADR
036621,001317: 31,3575 01226 CADR ABS # YIELDS ABVAL OF CRITERION ON DX IN MPAC
036622,001318: 31,3576 52155 DXCH MPAC
036623,001319: 31,3577 52125 DXCH DXCRIT # CRITERION
036624,001320:
036625,001321: # SET UP DER COF TABL
![]() |
Page 824 |
036627,001323: 31,3600 00006 EXTEND
036628,001324: 31,3601 50117 INDEX PWRPTR
036629,001325: 31,3602 30004 DCA 3
036630,001326: 31,3603 52155 DXCH MPAC # A(N) TO MPAC
036631,001327:
036632,001328: 31,3604 30160 CA MPAC +4 # N-1 TO A
036633,001329:
036634,001330: 31,3605 54140 DERCLOOP TS PWRCNT # LOOP COUNTER
036635,001331: 31,3606 64753 AD ONE
036636,001332: 31,3607 07316 TC DMPNSUB # YIELDS DERCOF = I X A(I) IN MPAC
036637,001333: 31,3610 00006 EXTEND
036638,001334: 31,3611 50117 INDEX PWRPTR
036639,001335: 31,3612 30002 DCA 1
036640,001336: 31,3613 52155 DXCH MPAC # A(I-1) TO MPAC, FETCHING DERCOF
036641,001337: 31,3614 50141 INDEX DERPTR
036642,001338: 31,3615 52004 DXCH 3 # DERCOF TO DER TABL
036643,001339: 31,3616 44752 CS TWO
036644,001340: 31,3617 26117 ADS PWRPTR # DECREMENT PWR POINTER
036645,001341: 31,3620 44752 CS TWO
036646,001342: 31,3621 26141 ADS DERPTR # DECREMENT DER POINTER
036647,001343: 31,3622 10140 CCS PWRCNT
036648,001344: 31,3623 13605 TCF DERCLOOP
036649,001345:
036650,001346: # CONVERGE ON ROOT
036651,001347: 31,3624 00006 ROOTLOOP EXTEND
036652,001348: 31,3625 30127 DCA ROOTPS # FETCH CURRENT ROOT
036653,001349: 31,3626 52155 DXCH MPAC # LEAVE IN MPAC
036654,001350: 31,3627 00006 EXTEND
036655,001351: 31,3630 30162 DCA MPAC +5 # LOAD A, L WITH DER TABL ADRES, N-2
036656,001352: 31,3631 07215 TC POWRSERS # YIELDS DERIVATIVE IN MPAC
036657,001353:
036658,001354: 31,3632 00006 EXTEND
036659,001355: 31,3633 30127 DCA ROOTPS
036660,001356: 31,3634 52155 DXCH MPAC # CURRENT ROOT TO MPAC, FETCHING DERIVTIVE
036661,001357: 31,3635 52131 DXCH BUF # LEAVE DERIVATIVE IN BUF AS DIVISOR
036662,001358: 31,3636 00006 EXTEND
036663,001359: 31,3637 30160 DCA MPAC +3 # LOAD A, L WITH PWR TABL ADRES, N-1
036664,001360: 31,3640 07215 TC POWRSERS # YIELDS RESIDUAL IN MPAC
036665,001361:
036666,001362: 31,3641 04713 TC USPRCADR
036667,001363: 31,3642 00353 CADR DDV/BDDV # YIELDS -DX IN MPAC
036668,001364:
036669,001365: 31,3643 00006 EXTEND
036670,001366: 31,3644 40155 DCS MPAC # FETCH DX, LEAVING -DX IN MPAC
036671,001367: 31,3645 20127 DAS ROOTPS # CORRECTED ROOT NOW IN ROOTPS
036672,001368:
036673,001369: 31,3646 04713 TC USPRCADR
036674,001370: 31,3647 01226 CADR ABS # YIELDS ABS(DX) IN MPAC
036675,001371: 31,3650 00006 EXTEND
![]() |
Page 825 |
036677,001373: 31,3651 40125 DCS DXCRIT
036678,001374: 31,3652 20155 DAS MPAC # ABS(DX)-ABS(DXCRIT) IN MPAC
036679,001375:
036680,001376: 31,3653 30163 CA MODE
036681,001377: 31,3654 74750 MASK BIT4 # KLUMPP SAYS GIVE UP AFTER EIGHT PASSES
036682,001378: 31,3655 10000 CCS A
036683,001379: 31,3656 00132 BADROOT TC RETROOT
036684,001380:
036685,001381: 31,3657 24163 INCR MODE # INCREMENT ITERATION COUNTER
036686,001382: 31,3660 10154 CCS MPAC # TEST HI ORDER DX
036687,001383: 31,3661 13624 TCF ROOTLOOP
036688,001384: 31,3662 13664 TCF TESTLODX
036689,001385: 31,3663 13670 TCF ROOTSTOR
036690,001386: 31,3664 10155 TESTLODX CCS MPAC +1 # TEST LO ORDER DX
036691,001387: 31,3665 13624 TCF ROOTLOOP
036692,001388: 31,3666 13670 TCF ROOTSTOR
036693,001389: 31,3667 13670 TCF ROOTSTOR
036694,001390: 31,3670 52127 ROOTSTOR DXCH ROOTPS
036695,001391: 31,3671 52155 DXCH MPAC
036696,001392: 31,3672 30163 CA MODE
036697,001393: 31,3673 54156 TS MPAC +2 # STORE SP ITERATION COUNT IN MPAC+2
036698,001394: 31,3674 50132 INDEX RETROOT
036699,001395: 31,3675 10002 TCF 2
036700,001396:
036701,001397: 31,3676 00147 DERTABLL ADRES DERCOFN -3
036702,001398:
036703,001399: # ****************************************************************************************************************
036704,001400: # TRASHY LITTLE SUBROUTINES
036705,001401: # ****************************************************************************************************************
036706,001402:
036707,001403: 31,3677 51351 INTPRETX INDEX WCHPHASE # SET X1 ON THE WAY TO THE INTERPRETER
036708,001404: 31,3700 42452 CS TARGTDEX
036709,001405: 31,3701 50120 INDEX FIXLOC
036710,001406: 31,3702 54046 TS X1
036711,001407: 31,3703 16037 TCF INTPRET
036712,001408:
036713,001409: 31,3704 31642 TDISPSET CA TTF/8
036714,001410: 31,3705 00006 EXTEND
036715,001411: 31,3706 74750 MP TSCALINV
036716,001412: 31,3707 53476 DXCH TTFDISP
036717,001413:
036718,001414: 31,3710 35014 CA EBANK5 # TREDES BECOMES ZERO TWO PASSES
036719,001415: 31,3711 54003 TS EBANK # BEFORE TCGFAPPR IS REACHED
036720,001416: 31,3712 E5,1470 EBANK= TCGFAPPR
036721,001417: 31,3712 31470 CA TCGFAPPR
036722,001418: 31,3713 24006 INCR BBANK
036723,001419: 31,3714 24006 INCR BBANK
036724,001420: 31,3715 E7,1642 EBANK= TTF/8
![]() |
Page 826 |
036726,001422: 31,3715 61642 AD TTF/8
036727,001423: 31,3716 00006 EXTEND
036728,001424: 31,3717 73751 MP TREDESCL
036729,001425: 31,3720 63747 AD -DEC103
036730,001426: 31,3721 64735 AD NEGMAX
036731,001427: 31,3722 54001 TS L
036732,001428: 31,3723 40001 CS L
036733,001429: 31,3724 60001 AD L
036734,001430: 31,3725 63750 AD +DEC99
036735,001431: 31,3726 64733 AD POSMAX
036736,001432: 31,3727 55666 TS TREDES
036737,001433: 31,3730 41666 CS TREDES
036738,001434: 31,3731 27666 ADS TREDES
036739,001435: 31,3732 00002 TC Q
036740,001436:
036741,001437: 31,3733 05652 1406POO TC POODOO
036742,001438: 31,3734 01406 OCT 01406
036743,001439: 31,3735 05567 1406ALM TC ALARM
036744,001440: 31,3736 01406 OCT 01406
036745,001441: 31,3737 13443 TCF RATESTOP
036746,001442:
036747,001443: # ****************************************************************************************************************
036748,001444: # SPECIALIZED "PHASCHNG" SUBROUTINE
036749,001445: # ****************************************************************************************************************
036750,001446:
036751,001447: 31,3740 E3,1440 EBANK= PHSNAME2
036752,001448: 31,3740 35007 FASTCHNG CA EBANK3 # SPECIALIZED 'PHASCHNG' ROUTINE
036753,001449: 31,3741 56003 XCH EBANK
036754,001450: 31,3742 52002 DXCH L
036755,001451: 31,3743 55442 TS PHSNAME3
036756,001452: 31,3744 22003 LXCH EBANK
036757,001453: 31,3745 E7,1621 EBANK= E2DPS
036758,001454: 31,3745 00000 TC A
036759,001455:
036760,001456: # ****************************************************************************************************************
036761,001457: # PARAMETER TABLE INDIRECT ADDRESSES
036762,001458: # ****************************************************************************************************************
036763,001459:
036764,001460: 31,3746 E5,1402 RDG = RBRFG
036765,001461: 31,3746 E5,1410 VDG = VBRFG
036766,001462: 31,3746 E5,1416 ADG = ABRFG
036767,001463: 31,3746 E5,1424 VDG2TTF = VBRFG*
036768,001464: 31,3746 E5,1426 ADG2TTF = ABRFG*
036769,001465: 31,3746 E5,1430 JDG2TTF = JBRFG*
036770,001466:
036771,001467: # ****************************************************************************************************************
036772,001468: # LUNAR LANDING CONSTANTS
036773,001469: # ***************************************************************************************************************
036774,001470:
![]() |
Page 827 |
036776,001472: 31,3746 01565 TABLTTFL ADRES TABLTTF +3 # ADDRESS FOR REFERENCING TTF TABLE
036777,001473: 31,3747 4740 TTFSCALE = BIT12
036778,001474: 31,3747 4750 TSCALINV = BIT4
036779,001475: 31,3747 77630 -DEC103 DEC -103 B-14
036780,001476: 31,3750 00143 +DEC99 DEC +99 B-14
036781,001477: 31,3751 75340 TREDESCL DEC -.08
036782,001478: 31,3752 00264 180DEGS DEC +180 B-14
036783,001479: 31,3753 00056 1/2DEG DEC +.00278
036784,001480: 31,3754 01542 PROJMAX DEC .42262 B-3 # SIN(25')/8 TO COMPARE WITH PROJ
036785,001481: 31,3755 01022 PROJMIN DEC .25882 B-3 # SIN(15')/8 TO COMPARE WITH PROJ
036786,001482: 31,3756 01477 V06N63 VN 0663 # P63
036787,001483: 31,3757 01500 V06N64 VN 0664 # P64
036788,001484: 31,3760 01474 V06N60 VN 0660 # P65, P66, P67
036789,001485:
036790,001486: 22,3647 BANK 22
036791,001487: 22,2000 SETLOC LANDCNST
036792,001488: 22,2000 BANK
036793,001489: 22,3647 COUNT* $$/F2DPS
036794,001490:
036795,001491: 22,3647 00021 14161 HIGHESTF 2DEC 4.34546769 B-12
036796,001492: 22,3651 01440 00000 GSCALE 2DEC 100 B-11
036797,001493: 22,3653 14000 00000 3/8DP 2DEC .375
036798,001494: 22,3655 30000 00000 3/4DP 2DEC .750
036799,001495: 22,3657 77534 45074 DEPRCRIT 2DEC -.02 B-1
036800,001496:
![]() |
Page 828 |
036802,001498: # ****************************************************************************************************************
036803,001499: # ****************************************************************************************************************
End of include-file LUNAR_LANDING_GUIDANCE_EQUATIONS.agc. Parent file is MAIN.agc