Source Code
![]() |
These source-code files derive from a printout of Luminary 116 (the Apollo 12
Lunar Module guidance computer program), from the personal library of
original AGC developer Don Eyles, digitally photographed at archive.org,
financially sponsored by Ron Burkey, and transcribed to source code by a
team of volunteers. This colorized, syntax-highlighted form was created
by assembling that transcribed source code. Note that the full page images
are available on the
Virtual AGC project page at archive.org, while reduced-size images
are presented at the VirtualAGC project website. Report or fix any
transcription errors at
the Virtual AGC project code repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 116 OF AGC PROGRAM LUMINARY BY NASA 2021112-071 19:09 AUG. 11,1969Note that the date is the date of the printout, not the date of the program revision. |
033850,000002: ## Copyright: Public domain.
033851,000003: ## Filename: LUNAR_LANDING_GUIDANCE_EQUATIONS.agc
033852,000004: ## Purpose: A section of Luminary revision 116.
033853,000005: ## It is part of the source code for the Lunar Module's (LM)
033854,000006: ## Apollo Guidance Computer (AGC) for Apollo 12.
033855,000007: ## This file is intended to be a faithful transcription, except
033856,000008: ## that the code format has been changed to conform to the
033857,000009: ## requirements of the yaYUL assembler rather than the
033858,000010: ## original YUL assembler.
033859,000011: ## Reference: pp. 791-822
033860,000012: ## Assembler: yaYUL
033861,000013: ## Contact: Ron Burkey <info@sandroid.org>.
033862,000014: ## Website: www.ibiblio.org/apollo/index.html
033863,000015: ## Mod history: 2017-01-22 MAS Created from Luminary 99.
033864,000016: ## 2017-03-10 RSB Transcribed, and then proofed comment-text using
033865,000017: ## 3-way diff vs Luminary 99 and Luminary 131.
033866,000018: ## (Admittedly, the former is more for detecting errors
033867,000019: ## in Luminary 99 than the other way around.)
033868,000020: ## The label 1406P00 was replaced with 1406POO.
033869,000021: ## 2017-03-16 RSB Comment-text fixes identified in 5-way
033870,000022: ## side-by-side diff of Luminary 69/99/116/131/210.
033871,000023: ## 2017-03-19 HG Add missing statement TC C13STALL (and shift label RESETRPT to it)
033872,000024: ## Fix value for BIASFACT B-28 --> B-26
033873,000025: ## Fix operand CGCALC --> EXTLOGIC
033874,000026: ## ENDLLJOB --> ENDOFJOB
033875,000027: ## REGODSPR --> REGDOSP
033876,000028: ## REFLASHR --> REFLASH
033877,000029:
![]() |
Page 791 |
033879,000031: 31,2346 E7,1621 EBANK= E2DPS
033880,000032: 31,2346 COUNT* $$/F2DPS
033881,000033:
033882,000034: # ****************************************************************************************************************
033883,000035: # LUNAR LANDING FLIGHT SEQUENCE TABLES
033884,000036: # ****************************************************************************************************************
033885,000037:
033886,000038: # FLIGHT SEQUENCE TABLES ARE ARRANGED BY FUNCTION. THEY ARE REFERENCED USING AS AN INDEX THE REGISTER WCHPHASE:
033887,000039: # WCHPHASE = -1 ---> IGNALG
033888,000040: # WCHPHASE = 0 ---> BRAKQUAD
033889,000041: # WCHPHASE = 1 ---> APPRQUAD
033890,000042: # WCHPHASE = 2 ---> VERTICAL
033891,000043:
033892,000044: # ***************************************************************************************************************
033893,000045:
033894,000046: # ROUTINES FOR STARTING NEW GUIDANCE PHASES:
033895,000047:
033896,000048: 31,2346 12603 TCF TTFINCR # IGNALG
033897,000049: 31,2347 12603 NEWPHASE TCF TTFINCR # BRAKQUAD
033898,000050: 31,2350 12566 TCF STARTP64 # APPRQUAD
033899,000051: 31,2351 12557 TCF P65START # VERTICAL
033900,000052:
033901,000053: # PRE-GUIDANCE COMPUTATIONS:
033902,000054:
033903,000055: 31,2352 12763 TCF CALCRGVG # IGNALG
033904,000056: 31,2353 12773 PREGUIDE TCF RGVGCALC # BRAKQUAD
033905,000057: 31,2354 12664 TCF REDESIG # APPRQUAD
033906,000058: 31,2355 12773 TCF RGVGCALC # VERTICAL
033907,000059:
033908,000060: # GUIDANCE EQUATIONS:
033909,000061:
033910,000062: 31,2356 13041 TCF TTF/8CL # IGNALG
033911,000063: 31,2357 13041 WHATGUID TCF TTF/8CL # BRAKQUAD
033912,000064: 31,2360 13041 TCF TTF/8CL # APPRQUAD
033913,000065: 31,2361 13514 TCF VERTGUID # VERTICAL
033914,000066:
033915,000067: # POST GUIDANCE EQUATION COMPUTATIONS:
033916,000068:
033917,000069: 31,2362 13240 TCF CGCALC # IGNALG
033918,000070: 31,2363 13225 AFTRGUID TCF EXTLOGIC # BRAKQUAD
033919,000071: 31,2364 13225 TCF EXTLOGIC # APPRQUAD
033920,000072: 31,2365 13411 TCF STEER? # VERTICAL
033921,000073:
![]() |
Page 792 |
033923,000075: # WINDOW VECTOR COMPUTATIONS:
033924,000076:
033925,000077: 31,2366 13310 TCF EXGSUB # IGNALG
033926,000078: 31,2367 13331 WHATEXIT TCF EXBRAK # BRAKQUAD
033927,000079: 31,2370 13337 TCF EXNORM # APPRQUAD
033928,000080:
033929,000081: # DISPLAY ROUTINES:
033930,000082:
033931,000083: 31,2371 13450 WHATDISP TCF P63DISPS # BRAKQUAD
033932,000084: 31,2372 13453 TCF P64DISPS # APPRQUAD
033933,000085: 31,2373 13502 TCF VERTDISP # VERTICAL
033934,000086:
033935,000087: # ALARM ROUTINE FOR TTF COMPUTATION:
033936,000088:
033937,000089: 31,2374 13712 TCF 1406POO # IGNALG
033938,000090: 31,2375 13714 WHATALM TCF 1406ALM # BRAKQUAD
033939,000091: 31,2376 13714 TCF 1406ALM # APPRQUAD
033940,000092:
033941,000093: # INDICES FOR REFERENCING TARGET PARAMETERS:
033942,000094:
033943,000095: 31,2377 00000 OCT 0 # IGNALG
033944,000096: 31,2400 00000 TARGTDEX OCT 0 # BRAKQUAD
033945,000097: 31,2401 00034 OCT 34 # APPRQUAD
033946,000098:
033947,000099: # ****************************************************************************************************************
033948,000100: # ENTRY POINTS: ?GUIDSUB FOR THE IGNITION ALGORITHM, LUNLAND FOR SERVOUT
033949,000101: # ****************************************************************************************************************
033950,000102:
033951,000103: # IGNITION ALGORITHM ENTRY: DELIVERS N PASSES OF QUADRATIC QUIDANCE
033952,000104:
033953,000105: 31,2402 77776 ?GUIDSUB EXIT
033954,000106: 31,2403 34752 CAF TWO # N = 3
033955,000107: 31,2404 55647 TS NGUIDSUB
033956,000108: 31,2405 12541 TCF GUILDRET +2
033957,000109:
033958,000110: 31,2406 55647 GUIDSUB TS NGUIDSUB # ON SUCEEDING PASSES SKIP TTFINCR
033959,000111: 31,2407 12763 TCF CALCRGVG
033960,000112:
033961,000113: # NORMAL ENTRY: CONTROL COMES HERE FROM SERVOUT
033962,000114:
033963,000115: 31,2410 05353 LUNLAND TC PHASCHNG
033964,000116: 31,2411 00035 OCT 00035 # GROUP 5: RETAIN ONLY PIPA TASK
033965,000117: 31,2412 30101 CA FLAGWRD5 # HAS THROTTLE-UP COME YET?
033966,000118: 31,2413 74744 MASK ZOOMBIT
033967,000119: 31,2414 00006 EXTEND
033968,000120: 31,2415 13442 BZF DISPEXIT +3 # NO: DO DISPLAYS ONLY
![]() |
Page 793 |
033970,000122: 31,2416 05353 TC PHASCHNG # YES: DO GUIDANCE
033971,000123: 31,2417 05023 OCT 05023
033972,000124: 31,2420 20000 OCT 20000
033973,000125:
033974,000126: # ****************************************************************************************************************
033975,000127: # GUILDENSTERN: AUTO-MODES MONITOR (R13)
033976,000128: # ****************************************************************************************************************
033977,000129:
033978,000130: 31,2421 COUNT* $$/R13
033979,000131:
033980,000132: # HERE IS THE PHILOSOPHY OF GUILDENSTERN: ON EVERY APPEARANCE OR DISAPPEARANCE OF THE MANUAL THROTTLE
033981,000133: # DISCRETE TO SELECT P67 OR P66 RESPECTIVELY; ON EVERY APPEARANCE OF THE ATTITUDE-HOLD DISCRETE TO SELECT P66
033982,000134: # UNLESS THE CURRENT PROGRAM IS P67 IN WHICH CASE THERE IS NO CHANGE.
033983,000135:
033984,000136: 31,2421 00006 GUILDEN EXTEND # IS UN-AUTO-THROTTLE DISCRETE PRESENT?
033985,000137: 31,2422 00030 READ CHAN30
033986,000138: 31,2423 74747 MASK BIT5
033987,000139: 31,2424 10000 CCS A
033988,000140: 31,2425 12503 TCF STARTP67 # YES
033989,000141: 31,2426 05321 P67NOW? TC CHECKMM # NO: ARE WE IN P67 NOW?
033990,000142: 31,2427 00103 DEC 67 B-14
033991,000143: 31,2430 12511 TCF STABL? # NO
![]() |
In the printout, a hand-drawn horizontal rule appears here: |
033994,000146: 31,2431 03717 STARTP66 TC FASTCHNG # YES
033995,000147: 31,2432 05311 TC NEWMODEX
033996,000148: 31,2433 00102 DEC66 DEC 66 B-14
033997,000149: 31,2434 00006 EXTEND
033998,000150: 31,2435 31474 DCA HDOTDISP # SET DESIRED ALTITUDE RATE = CURRENT
033999,000151: 31,2436 53645 DXCH VDGVERT # ALTITUDE RATE.
034000,000152: 31,2437 06042 STRTP66A TC INTPRET
034001,000153: 31,2440 41535 SLOAD PUSH
034002,000154: 31,2441 01457 PBIASZ
034003,000155: 31,2442 41535 SLOAD PUSH
034004,000156: 31,2443 01455 PBIASY
034005,000157: 31,2444 55535 SLOAD VDEF
034006,000158: 31,2445 01453 PBIASX
034007,000159: 31,2446 43161 VXSC SET
034008,000160: 31,2447 25546 BIASFACT
034009,000161: 31,2450 00463 RODFLAG
034010,000162: 31,2451 26621 STOVL VBIAS
034011,000163: 31,2452 01254 TEMX
034012,000164: 31,2453 77676 VCOMP
034013,000165: 31,2454 27764 STOVL OLDPIPAX
034014,000166: 31,2455 06524 ZEROVECS
034015,000167: 31,2456 17767 STODL DELVROD
034016,000168: 31,2457 02540 RODSCALE
034017,000169: 31,2460 17757 STODL RODSCAL1
034018,000170: 31,2461 01234 PIPTIME
034019,000171: 31,2462 03760 STORE LASTTPIP
034020,000172: 31,2463 77776 EXIT
034021,000173: 31,2464 34755 CAF ZERO
![]() |
Page 794 |
034023,000175: 31,2465 55620 TS FCOLD
034024,000176: 31,2466 55610 TS FWEIGHT
034025,000177: 31,2467 55611 TS FWEIGHT +1
034026,000178: 31,2470 55647 VRTSTART TS WCHVERT
034027,000179: 31,2471 34752 CAF TWO # WCHPHASE = 2 ---> VERTICAL: P65,P66,P67
034028,000180: 31,2472 55621 TS WCHPHOLD
034029,000181: 31,2473 55346 TS WCHPHASE
034030,000182: 31,2474 04616 TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE
034031,000183: 31,2475 40166 CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE
034032,000184: 31,2476 05516 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
034033,000185: 31,2477 00311 ADRES XOVINFLG
034034,000186: 31,2500 05516 TC DOWNFLAG
034035,000187: 31,2501 00143 ADRES REDFLAG
034036,000188: 31,2502 13514 TCF VERTGUID
034037,000189:
034038,000190: 31,2503 05311 STARTP67 TC NEWMODEX # NO HARM IN "STARTING" P67 OVER AND OVER
034039,000191: 31,2504 00103 DEC 67 B-14 # SO NO NEED FOR A FASTCHNG AND NO NEED
034040,000192: 31,2505 34755 CAF ZERO # TO SEE IF ALREADY IN P67.
034041,000193: 31,2506 55746 TS RODCOUNT
034042,000194: 31,2507 34363 CAF TEN
![]() |
In the printout, the following line is crossed out. |
034044,000196: 31,2510 12470 TCF VRTSTART
034045,000197:
034046,000198: 31,2511 41010 STABL? CS MODREG # ARE WE IN P66 EVEN THO WE MAY BE IN
034047,000199: 31,2512 62433 AD DEC66 # AUTO DAP?
034048,000200: 31,2513 00006 EXTEND
034049,000201: 31,2514 12532 BZF RESTART? # YES. GO AND CHECK FOR A RESTART.
034050,000202: 31,2515 34737 CAF BIT13 # NO. UN-ATTITUDE-HOLD DISCRETE PRESENT?
034051,000203: 31,2516 00006 EXTEND
034052,000204: 31,2517 02031 RAND CHAN31
034053,000205: 31,2520 10000 CCS A
034054,000206: 31,2521 12537 TCF GUILDRET # YES: ALL'S WELL
034055,000207:
034056,000208: 31,2522 41010 P66NOW? CS MODREG
034057,000209: 31,2523 62433 AD DEC66
034058,000210: 31,2524 00006 EXTEND
034059,000211: 31,2525 12532 BZF RESTART?
034060,000212:
034061,000213: 31,2526 31746 CA RODCOUNT # NO. HAS THE ROD SWITCH BEEN "CLICKED"?
034062,000214: 31,2527 00006 EXTEND
034063,000215: 31,2530 12537 BZF GUILDRET # NO. CONTINUE WITH AUTOMATIC LANDING.
034064,000216: 31,2531 12431 TCF STARTP66 # YES. SWITCH INTO THE ROD MODE.
034065,000217:
034066,000218: 31,2532 30075 RESTART? CA FLAGWRD1 # HAS THERE BEEN A RESTART?
034067,000219: 31,2533 74740 MASK RODFLBIT
034068,000220: 31,2534 00006 EXTEND
034069,000221: 31,2535 12437 BZF STRTP66A # YES. REINITIALIZE BUT LEAVE VDGVERT AS
034070,000222: # IS.
034071,000223:
034072,000224: 31,2536 13514 TCF VERTGUID # NO: CONTINUE WITH R.O.D.
![]() |
Page 795 |
034074,000226:
034075,000227: # ****************************************************************************************************************
034076,000228: # INITIALIZATION FOR THIS PASS
034077,000229: # ****************************************************************************************************************
034078,000230:
034079,000231: 31,2537 COUNT* $$/F2DPS
034080,000232:
034081,000233: 31,2537 34755 GUILDRET CAF ZERO
034082,000234: 31,2540 55746 TS RODCOUNT
034083,000235:
034084,000236: 31,2541 00006 +2 EXTEND
034085,000237: 31,2542 31625 DCA TPIP
034086,000238: 31,2543 53574 DXCH TPIPOLD
034087,000239:
034088,000240: 31,2544 03717 TC FASTCHNG
034089,000241:
034090,000242: 31,2545 00006 EXTEND
034091,000243: 31,2546 31561 DCA PIPTIME1
034092,000244: 31,2547 53625 DXCH TPIP
034093,000245:
034094,000246: 31,2550 00006 EXTEND
034095,000247: 31,2551 31643 DCA TTF/8
034096,000248: 31,2552 53553 DXCH TTF/8TMP
034097,000249:
034098,000250: 31,2553 11623 CCS FLPASS0
034099,000251: 31,2554 12603 TCF TTFINCR
034100,000252:
034101,000253: 31,2555 51346 BRSPOT1 INDEX WCHPHASE
034102,000254: 31,2556 12347 TCF NEWPHASE
034103,000255:
034104,000256: # ****************************************************************************************************************
034105,000257: # ROUTINES TO START NEW PHASES
034106,000258: # ****************************************************************************************************************
034107,000259:
034108,000260: 31,2557 05311 P65START TC NEWMODEX
034109,000261: 31,2560 00101 DEC 65 B-14
034110,000262: 31,2561 44752 CS TWO
034111,000263: 31,2562 55647 TS WCHVERT
034112,000264: 31,2563 05516 TC DOWNFLAG # PERMIT X-AXIS OVERRIDE
034113,000265: 31,2564 00311 ADRES XOVINFLG
034114,000266: 31,2565 12603 TCF TTFINCR
034115,000267:
034116,000268: 31,2566 05311 STARTP64 TC NEWMODEX
034117,000269: 31,2567 00100 DEC 64 B-14
034118,000270: 31,2570 31425 CA DELTTFAP # AUGMENT TTF/8
034119,000271: 31,2571 27552 ADS TTF/8TMP
034120,000272: 31,2572 00004 INHINT
034121,000273: 31,2573 06022 TC C13STALL
034122,000274: 31,2574 34740 CA BIT12 # ENABLE RUPT10
034123,000275: 31,2575 00006 EXTEND
![]() |
Page 796 |
034125,000277: 31,2576 05013 WOR CHAN13
034126,000278: 31,2577 33727 CAF P64DB
034127,000279: 31,2600 55343 TS DB
034128,000280: 31,2601 05516 TC DOWNFLAG # INITIALIZE REDESIGNATION FLAG
034129,000281: 31,2602 00143 ADRES REDFLAG
034130,000282:
034131,000283:
034132,000284: # (CONTINUE TO TTFINCR)
034133,000285:
034134,000286: # ****************************************************************************************************************
034135,000287: # INCREMENT TTF/8, UPDATE LAND FOR LUNAR ROTATION, DO OTHER USEFUL THINGS
034136,000288: # ****************************************************************************************************************
034137,000289:
034138,000290: # TTFINCR COMPUTATIONS ARE AS FOLLOWS:-
034139,000291: # TTF/8 UPDATED FOR TIME SINCE LAST PASS:
034140,000292:
034141,000293: # TTF/8 = TTF/8 + (TPIP - TPIPOLD)/8
034142,000294:
034143,000295: # LANDING SITE VECTOR UPDATED FOR LUNAR ROTATION:
034144,000296:
034145,000297: # - - - -
034146,000298: # LAND = /LAND/ UNIT(LAND - LAND(TPIP - TPIPOLD) * WM)
034147,000299:
034148,000300: # SLANT RANGE TO LANDING SITE, FOR DISPLAY:
034149,000301:
034150,000302: # - -
034151,000303: # RANGEDSP = ABVAL(LAND - R)
034152,000304:
034153,000305: 31,2603 06042 TTFINCR TC INTPRET
034154,000306: 31,2604 45345 DLOAD DSU
034155,000307: 31,2605 03625 TPIP
034156,000308: 31,2606 03574 TPIPOLD
034157,000309: 31,2607 41461 SLR PUSH # SHIFT SCALES DELTA TIME TO 2(17) CSECS
034158,000310: 31,2610 21214 11D
034159,000311: 31,2611 47361 VXSC VXV
034160,000312: 31,2612 03635 LAND
034161,000313: 31,2613 02325 WM
034162,000314: 31,2614 47045 BVSU RTB
034163,000315: 31,2615 03635 LAND
034164,000316: 31,2616 21727 NORMUNIT
034165,000317: 31,2617 76561 VXSC VSL1
034166,000318: 31,2620 02333 /LAND/
034167,000319: 31,2621 17545 STODL LANDTEMP
034168,000320: 31,2622 77776 EXIT
034169,000321:
034170,000322: 31,2623 52155 DXCH MPAC
034171,000323: 31,2624 21553 DAS TTF/8TMP # NOW HAVE INCREMENTED TTF/8 IN TTF/8TMP
034172,000324:
034173,000325: 31,2625 03717 TC FASTCHNG
![]() |
Page 804 |
034175,000327:
034176,000328: 31,2626 00006 EXTEND
034177,000329: 31,2627 31553 DCA TTF/8TMP
034178,000330: 31,2630 53643 DXCH TTF/8
034179,000331:
034180,000332: 31,2631 03663 TC TDISPSET
034181,000333:
034182,000334: 31,2632 37721 CAF PRIO31 # TEMPORARILY OVER-PRIO CHARIN
034183,000335: 31,2633 05146 TC PRIOCHNG
034184,000336:
034185,000337: 31,2634 06042 TC INTPRET
034186,000338: 31,2635 53375 VLOAD VAD # ADD IN CORRECTION FROM NOUN 69
034187,000339: 31,2636 03545 LANDTEMP
034188,000340: 31,2637 02635 DLAND
034189,000341: 31,2640 03635 STORE LAND
034190,000342: 31,2641 77646 ABVAL # RECOMPUTE /LAND/
034191,000343: 31,2642 02333 STORE /LAND/
034192,000344: 31,2643 77776 EXIT
034193,000345:
034194,000346: 31,2644 03717 TC FASTCHNG # SINCE REDESIG MAY CHANGE LANDTEMP
034195,000347:
034196,000348: 31,2645 35014 CAF EBANK5
034197,000349: 31,2646 E5,1634 EBANK= DLAND
034198,000350: 31,2646 54003 TS EBANK
034199,000351: 31,2647 34755 CAF ZERO # ZERO N 69 REGISTERS
034200,000352: 31,2650 55634 TS DLAND
034201,000353: 31,2651 55635 TS DLAND +1
034202,000354: 31,2652 55636 TS DLAND +2
034203,000355: 31,2653 55637 TS DLAND +3
034204,000356: 31,2654 55640 TS DLAND +4
034205,000357: 31,2655 55641 TS DLAND +5
034206,000358: 31,2656 35016 CAF EBANK7
034207,000359: 31,2657 E7,1666 EBANK= TREDES
034208,000360: 31,2657 54003 TS EBANK
034209,000361:
034210,000362: 31,2660 34736 CAF PRIO20
034211,000363: 31,2661 05146 TC PRIOCHNG
034212,000364:
034213,000365: 31,2662 51346 BRSPOT2 INDEX WCHPHASE
034214,000366: 31,2663 12353 TCF PREGUIDE
034215,000367:
034216,000368: # ****************************************************************************************************************
034217,000369: # LANDING SITE PERTURBATION EQUATIONS
034218,000370: # ****************************************************************************************************************
034219,000371:
034220,000372: 31,2664 30102 REDESIG CA FLAGWRD6 # IS REDFLAG SET?
034221,000373: 31,2665 74746 MASK REDFLBIT
034222,000374: 31,2666 00006 EXTEND
034223,000375: 31,2667 12773 BZF RGVGCALC # NO: SKIP REDESIGNATION LOGIC
034224,000376:
034225,000377: 31,2670 31666 CA TREDES # YES: HAS TREDES REACHED ZERO?
![]() |
Page 798 |
034227,000379: 31,2671 00006 EXTEND
034228,000380: 31,2672 12773 BZF RGVGCALC # YES: SKIP REDESIGNATION LOGIC
034229,000381:
034230,000382: 31,2673 00004 INHINT
034231,000383: 31,2674 31446 CA ELINCR1
034232,000384: 31,2675 55554 TS ELINCR
034233,000385: 31,2676 31445 CA AZINCR1
034234,000386: 31,2677 55556 TS AZINCR
034235,000387: 31,2700 03717 TC FASTCHNG
034236,000388:
034237,000389: 31,2701 34755 CA ZERO
034238,000390: 31,2702 55446 TS ELINCR1
034239,000391: 31,2703 55445 TS AZINCR1
034240,000392: 31,2704 55555 TS ELINCR +1
034241,000393: 31,2705 55557 TS AZINCR +1
034242,000394:
034243,000395: 31,2706 30120 CA FIXLOC # SET PD TO 0
034244,000396: 31,2707 54166 TS PUSHLOC
034245,000397:
034246,000398: 31,2710 06042 TC INTPRET
034247,000399: 31,2711 52375 VLOAD VSU
034248,000400: 31,2712 03635 LAND
034249,000401: 31,2713 03521 R # - -
034250,000402: 31,2714 41434 RTB PUSH # PUSH DOWN UNIT (LAND - R)
034251,000403: 31,2715 21727 NORMUNIT
034252,000404: 31,2716 76435 VXV VSL1
034253,000405: 31,2717 02154 YNBPIP # - - -
034254,000406: 31,2720 65361 VXSC PDDL # PUSH DOWN - ELINCR(YNB * UNIT(LAND - R))
034255,000407: 31,2721 03555 ELINCR
034256,000408: 31,2722 03557 AZINCR
034257,000409: 31,2723 52361 VXSC VSU
034258,000410: 31,2724 02154 YNBPIP
034259,000411: 31,2725 41455 VAD PUSH # RESULTING VECTOR IS 1/2 REAL SIZE
034260,000412:
034261,000413:
034262,000414: 31,2726 45345 DLOAD DSU # MAKE SURE REDESIGNATION IS NOT
034263,000415: 31,2727 00001 0 # TOO CLOSE TO THE HORIZON
034264,000416: 31,2730 05660 DEPRCRIT
034265,000417: 31,2731 71240 BMN DLOAD
034266,000418: 31,2732 62735 REDES1
034267,000419: 31,2733 05660 DEPRCRIT
034268,000420: 31,2734 00001 STORE 0
034269,000421: 31,2735 45345 REDES1 DLOAD DSU
034270,000422: 31,2736 03635 LAND
034271,000423: 31,2737 03521 R
034272,000424: 31,2740 74271 DDV VXSC
034273,000425: 31,2741 00001 0
034274,000426: 31,2742 53455 VAD UNIT
034275,000427: 31,2743 03521 R
034276,000428: 31,2744 76561 VXSC VSL1
034277,000429: 31,2745 02333 /LAND/
![]() |
Page 799 |
034279,000431: 31,2746 03545 STORE LANDTEMP
034280,000432: 31,2747 77776 EXIT # LOOKANGL WILL BE COMPUTED AT RGVGCALC
034281,000433:
034282,000434: 31,2750 03717 TC FASTCHNG
034283,000435:
034284,000436: 31,2751 00006 EXTEND
034285,000437: 31,2752 31545 DCA LANDTEMP
034286,000438: 31,2753 53635 DXCH LAND
034287,000439: 31,2754 00006 EXTEND
034288,000440: 31,2755 31547 DCA LANDTEMP +2
034289,000441: 31,2756 53637 DXCH LAND +2
034290,000442: 31,2757 00006 EXTEND
034291,000443: 31,2760 31551 DCA LANDTEMP +4
034292,000444: 31,2761 53641 DXCH LAND +4
034293,000445:
034294,000446: 31,2762 12773 TCF RGVGCALC
034295,000447:
034296,000448: # ****************************************************************************************************************
034297,000449: # COMPUTE STATE IN GUIDANCE COORDINATES
034298,000450: # ****************************************************************************************************************
034299,000451:
034300,000452: # RGVGCALC COMPUTATIONS ARE AS FOLLOWS:-
034301,000453: # VELOCITY RELATIVE TO THE SURFACE:
034302,000454:
034303,000455: # - - - -
034304,000456: # ANGTERM = V + R * WM
034305,000457:
034306,000458: # STATE IN GUIDANCE COORDINATES:
034307,000459:
034308,000460: # - * - -
034309,000461: # RGU = CG (R - LAND)
034310,000462:
034311,000463: # - * - - -
034312,000464: # VGU = CG (V - WM * R)
034313,000465:
034314,000466: # HORIZONTAL VELOCITY FOR DISPLAY:
034315,000467:
034316,000468: # VHORIZ = 8 ABVAL (0, VG , VG )
034317,000469: # 2 1
034318,000470:
034319,000471: # DEPRESSION ANGLE FOR DISPLAY:
034320,000472:
034321,000473: # - - -
034322,000474: # LOOKANGL = ARCSIN(UNIT(R - LAND).XMBPIP)
034323,000475:
034324,000476: 31,2763 06042 CALCRGVG TC INTPRET # IN IGNALG, COMPUTE V FROM INTEGRATION
034325,000477: 31,2764 64375 VLOAD MXV # OUTPUT AND TRIM CORRECTION TERM
034326,000478: 31,2765 00025 VATT1 # COMPUTED LAST PASS AND LEFT IN UNFC/2
034327,000479: 31,2766 01734 REFSMMAT
![]() |
Page 800 |
034329,000481: 31,2767 53362 VSR1 VAD
034330,000482: 31,2770 03254 UNFC/2
034331,000483: 31,2771 03527 STORE V
034332,000484: 31,2772 77776 EXIT
034333,000485:
034334,000486: 31,2773 06042 RGVGCALC TC INTPRET # ENTER HERE TO RECOMPUTE RG AND VG
034335,000487: 31,2774 47375 VLOAD VXV
034336,000488: 31,2775 03521 R
034337,000489: 31,2776 02325 WM
034338,000490: 31,2777 70455 VAD VSR2 # RESCALE TO UNITS OF 2(9) M/CS
034339,000491: 31,3000 03527 V
034340,000492: 31,3001 02265 STORE ANGTERM
034341,000493: 31,3002 77721 MXV
034342,000494: 31,3003 02575 CG # NO SHIFT SINCE ANGTERM IS DOUBLE SIZED
034343,000495: 31,3004 03627 STORE VGU
034344,000496: 31,3005 55525 PDDL VDEF # FORM (0,VG ,VG ) IN UNITS OF 2(10) M/CS
034345,000497: 31,3006 06524 ZEROVECS # 2 1
034346,000498: 31,3007 52446 ABVAL SL3
034347,000499: 31,3010 26263 STOVL VHORIZ # VHORIZ FOR DISPLAY DURING P65.
034348,000500: 31,3011 03521 R # - -
034349,000501: 31,3012 41451 VSU PUSH # PUSH DOWN R - LAND
034350,000502: 31,3013 03635 LAND
034351,000503: 31,3014 76521 MXV VSL1
034352,000504: 31,3015 02575 CG
034353,000505: 31,3016 02627 STORE RGU
034354,000506: 31,3017 77646 ABVAL
034355,000507: 31,3020 26617 STOVL RANGEDSP
034356,000508: 31,3021 50234 RTB DOT # NOW IN MPAC IS SINE(LOOKANGL)/4
034357,000509: 31,3022 21727 NORMUNIT
034358,000510: 31,3023 02146 XNBPIP
034359,000511: 31,3024 77776 EXIT
034360,000512:
034361,000513: 31,3025 30120 CA FIXLOC # RESET PUSH DOWN POINTER
034362,000514: 31,3026 54166 TS PUSHLOC
034363,000515:
034364,000516: 31,3027 30154 CA MPAC # COMPUTE LOOKANGL ITSELF
034365,000517: 31,3030 60000 DOUBLE
034366,000518: 31,3031 04616 TC BANKCALL
034367,000519: 31,3032 61657 CADR SPARCSIN -1
034368,000520: 31,3033 63733 AD 1/2DEG
034369,000521: 31,3034 00006 EXTEND
034370,000522: 31,3035 73732 MP 180DEGS
034371,000523: 31,3036 55667 TS LOOKANGL # LOOKANGL FOR DISPLAY DURING P64
034372,000524:
034373,000525: 31,3037 51346 BRSPOT3 INDEX WCHPHASE
034374,000526: 31,3040 12357 TCF WHATGUID
034375,000527:
034376,000528: # ****************************************************************************************************************
034377,000529: # TTF/8 COMPUTATION
034378,000530: # ****************************************************************************************************************
034379,000531:
![]() |
Page 801 |
034381,000533: 31,3041 03656 TTF/8CL TC INTPRETX
034382,000534: 31,3042 77743 DLOAD*
034383,000535: 31,3043 02431 JDG2TTF,1
034384,000536: 31,3044 23571 STODL* TABLTTF +6 # A(3) = 8 JDG TO TABLTTF
034385,000537: 31,3045 02427 ADG2TTF,1 # 2
034386,000538: 31,3046 17567 STODL TABLTTF +4 # A(2) = 6 ADG TO TABLTTF
034387,000539: 31,3047 03633 VGU +4 # 2
034388,000540: 31,3050 42605 DMP DAD*
034389,000541: 31,3051 05656 3/4DP
034390,000542: 31,3052 02425 VDG2TTF,1
034391,000543: 31,3053 23565 STODL* TABLTTF +2 # A(1) = (6 VGU + 18 VDG )/8 TO TABLTTF
034392,000544: 31,3054 02407 RDG +4,1 # 2 2
034393,000545: 31,3055 41225 DSU DMP
034394,000546: 31,3056 02633 RGU +4
034395,000547: 31,3057 05654 3/8DP
034396,000548: 31,3060 03563 STORE TABLTTF # A(0) = -24 (RGU - RDG )/64 TO TABLTTF
034397,000549: 31,3061 77776 EXIT # 2 2
034398,000550:
034399,000551: 31,3062 34744 CA BIT8
034400,000552: 31,3063 55572 TS TABLTTF +10 # FRACTIONAL PRECISION FOR TTF TO TABLE
034401,000553:
034402,000554: 31,3064 00006 EXTEND
034403,000555: 31,3065 31643 DCA TTF/8
034404,000556: 31,3066 52155 DXCH MPAC # LOADS TTF/8 (INITIAL GUESS) INTO MPAC
034405,000557: 31,3067 34752 CAF TWO # DEGREE - ONE
034406,000558: 31,3070 54001 TS L
034407,000559: 31,3071 33725 CAF TABLTTFL
034408,000560: 31,3072 03532 TC ROOTPSRS # YIELDS TTF/8 IN MPAC
034409,000561: 31,3073 51346 INDEX WCHPHASE
034410,000562: 31,3074 12375 TCF WHATALM
034411,000563:
034412,000564: 31,3075 00006 EXTEND # GOOD RETURN
034413,000565: 31,3076 30155 DCA MPAC # FETCH TTF/8 KEEPING IT IN MPAC
034414,000566: 31,3077 53643 DXCH TTF/8 # CORRECTED TTF/8
034415,000567:
034416,000568: 31,3100 03663 TC TDISPSET
034417,000569:
034418,000570: # (CONTINUE TO QUADGUID)
034419,000571:
034420,000572: # ****************************************************************************************************************
034421,000573: # MAIN GUIDANCE EQUATION
034422,000574: # ****************************************************************************************************************
034423,000575:
034424,000576: # AS PUBLISHED:-
034425,000577:
034426,000578: # - - - -
034427,000579: # - - 6(VDG + VG) 12(RDG - RG)
034428,000580: # ACG = ADG + ----------- + ------------
034429,000581: # TTF (TTF)(TTF)
034430,000582:
![]() |
Page 802 |
034432,000584: # AS HERE PROGRAMMED:-
034433,000585: # - -
034434,000586: # 3 (1/4(RDG - RG) - - )
034435,000587: # - (------------- + VDG + VG)
034436,000588: # - 4 ( TTF/8 ) -
034437,000589: # ACG = ---------------------------- + ADG
034438,000590: # TTF/8
034439,000591:
034440,000592: 31,3101 41642 QUADGUID CS TTF/8
034441,000593: 31,3102 61426 AD LEADTIME # LEADTIME IS A NEGATIVE NUMBER
034442,000594: 31,3103 64733 AD POSMAX # SAFEGUARD THE COMPUTATIONS THAT FOLLOW
034443,000595: 31,3104 54001 TS L # BY FORCING -TTF+LEADTIME > OR = ZERO
034444,000596: 31,3105 40001 CS L
034445,000597: 31,3106 60001 AD L
034446,000598: 31,3107 22007 ZL
034447,000599: 31,3110 00006 EXTEND
034448,000600: 31,3111 11642 DV TTF/8
034449,000601: 31,3112 54130 TS BUF # - RATIO OF LAG-DIMINISHED TTF TO TTF
034450,000602: 31,3113 00006 EXTEND
034451,000603: 31,3114 70000 SQUARE
034452,000604: 31,3115 54131 TS BUF +1
034453,000605: 31,3116 60130 AD BUF
034454,000606: 31,3117 56131 XCH BUF +1 # RATIO SQUARED - RATIO
034455,000607: 31,3120 60131 AD BUF +1
034456,000608: 31,3121 54154 TS MPAC # COEFFICIENT FOR VGU TERM
034457,000609: 31,3122 60131 AD BUF +1
034458,000610: 31,3123 50120 INDEX FIXLOC
034459,000611: 31,3124 54032 TS 26D # COEFFICIENT FOR RDG-RGU TERM
034460,000612: 31,3125 60131 AD BUF +1
034461,000613: 31,3126 50120 INDEX FIXLOC
034462,000614: 31,3127 54034 TS 28D # COEFFICIENT FOR VDG TERM
034463,000615: 31,3130 60130 AD BUF
034464,000616: 31,3131 64733 AD POSMAX
034465,000617: 31,3132 60131 AD BUF +1
034466,000618: 31,3133 60131 AD BUF +1
034467,000619: 31,3134 50120 INDEX FIXLOC
034468,000620: 31,3135 54036 TS 30D # COEFFICIENT FOR ADG TERM
034469,000621:
034470,000622: 31,3136 34755 CAF ZERO
034471,000623: 31,3137 54163 TS MODE
034472,000624:
034473,000625: 31,3140 03656 TC INTPRETX
034474,000626: 31,3141 65361 VXSC PDDL
034475,000627: 31,3142 03627 VGU
034476,000628: 31,3143 00035 28D
034477,000629: 31,3144 62757 VXSC* PDVL*
034478,000630: 31,3145 02411 VDG,1
034479,000631: 31,3146 02403 RDG,1
034480,000632: 31,3147 70251 VSU V/SC
![]() |
Page 803 |
034482,000634: 31,3150 02627 RGU
034483,000635: 31,3151 03643 TTF/8
034484,000636: 31,3152 74342 VSR2 VXSC
034485,000637: 31,3153 00033 26D
034486,000638: 31,3154 53255 VAD VAD
034487,000639: 31,3155 74341 V/SC VXSC
034488,000640: 31,3156 03643 TTF/8
034489,000641: 31,3157 05656 3/4DP
034490,000642: 31,3160 73725 PDDL VXSC*
034491,000643: 31,3161 00037 30D
034492,000644: 31,3162 02417 ADG,1
034493,000645: 31,3163 77655 VAD
034494,000646: 31,3164 76505 AFCCALC1 VXM VSL1 # VERTGUID COMES HERE
034495,000647: 31,3165 02575 CG
034496,000648: 31,3166 70315 PDVL V/SC
034497,000649: 31,3167 01236 GDT/2
034498,000650: 31,3170 05652 GSCALE
034499,000651: 31,3171 45445 BVSU STADR
034500,000652: 31,3172 74523 STORE UNFC/2 # UNFC/2 NEED NOT BE UNITIZED
034501,000653: 31,3173 77646 ABVAL
034502,000654: 31,3174 17464 AFCCALC2 STODL /AFC/ # MAGNITUDE OF AFC FOR THROTTLE
034503,000655: 31,3175 03254 UNFC/2 # VERTICAL COMPONENT
034504,000656: 31,3176 65316 DSQ PDDL
034505,000657: 31,3177 03256 UNFC/2 +2 # OUT-OF-PLANE
034506,000658: 31,3200 65316 DSQ PDDL
034507,000659: 31,3201 05650 HIGHESTF
034508,000660: 31,3202 63471 DDV DSQ
034509,000661: 31,3203 01244 MASS # 2 2 2
034510,000662: 31,3204 45225 DSU DSU # AMAXHORIZ = SQRT(ATOTAL - A - A )
034511,000663: 31,3205 71244 BPL DLOAD # 1 0
034512,000664: 31,3206 63210 AFCCALC3
034513,000665: 31,3207 06524 ZEROVECS
034514,000666: 31,3210 43366 AFCCALC3 SQRT DAD
034515,000667: 31,3211 03260 UNFC/2 +4
034516,000668: 31,3212 44244 BPL BDSU
034517,000669: 31,3213 63216 AFCCLEND
034518,000670: 31,3214 03260 UNFC/2 +4
034519,000671: 31,3215 03260 STORE UNFC/2 +4
034520,000672: 31,3216 77776 AFCCLEND EXIT
034521,000673: 31,3217 03717 TC FASTCHNG
034522,000674:
034523,000675: 31,3220 31346 CA WCHPHASE # PREPARE FOR PHASE SWITCHING LOGIC
034524,000676: 31,3221 55621 TS WCHPHOLD
034525,000677: 31,3222 25623 INCR FLPASS0 # INCREMENT PASS COUNTER
034526,000678:
034527,000679: 31,3223 51346 BRSPOT4 INDEX WCHPHASE
034528,000680: 31,3224 12363 TCF AFTRGUID
034529,000681:
034530,000682: # ****************************************************************************************************************
034531,000683: # NEW PHASE NOW?
![]() |
Page 804 |
034533,000685: # ****************************************************************************************************************
034534,000686:
034535,000687: 31,3225 51346 EXTLOGIC INDEX WCHPHASE # IS TTF NEARER ZERO THAN CRITERION?
034536,000688: 31,3226 31423 CA TENDBRAK
034537,000689: 31,3227 61642 AD TTF/8
034538,000690: 31,3230 00006 EXTEND
034539,000691: 31,3231 63240 BZMF CGCALC # NO
034540,000692:
034541,000693: 31,3232 03717 TC FASTCHNG # YES: INCREMENT WCHPHASE, ZERO FLPASS0
034542,000694:
034543,000695: 31,3233 31621 CA WCHPHOLD
034544,000696: 31,3234 64753 AD ONE
034545,000697: 31,3235 55346 TS WCHPHASE
034546,000698: 31,3236 34755 CAF ZERO
034547,000699: 31,3237 55623 TS FLPASS0
034548,000700:
034549,000701: # (CONTINUE TO CGCALC)
034550,000702:
034551,000703: # ***************************************************************************************************************
034552,000704: # ERECT GUIDANCE-STABLE MEMBER TRANSFORMATION MATRIX
034553,000705: # ***************************************************************************************************************
034554,000706:
034555,000707: 31,3240 35014 CGCALC CAF EBANK5
034556,000708: 31,3241 54003 TS EBANK
034557,000709: 31,3242 E5,1435 EBANK= TCGIBRAK
034558,000710: 31,3242 00006 EXTEND
034559,000711: 31,3243 51346 INDEX WCHPHASE
034560,000712: 31,3244 52400 INDEX TARGTDEX
034561,000713: 31,3245 31435 DCA TCGFBRAK
034562,000714: 31,3246 24006 INCR BBANK
034563,000715: 31,3247 24006 INCR BBANK
034564,000716: 31,3250 E7,1642 EBANK= TTF/8
034565,000717: 31,3250 61642 AD TTF/8
034566,000718: 31,3251 56001 XCH L
034567,000719: 31,3252 61642 AD TTF/8
034568,000720: 31,3253 10000 CCS A
034569,000721: 31,3254 10001 CCS L
034570,000722: 31,3255 13306 TCF EXITSPOT
034571,000723: 31,3256 13306 TCF EXITSPOT
034572,000724: 31,3257 13260 NOOP
034573,000725:
034574,000726: 31,3260 03656 TC INTPRETX
034575,000727: 31,3261 53575 VLOAD UNIT
034576,000728: 31,3262 03635 LAND
034577,000729: 31,3263 16575 STODL CG
034578,000730: 31,3264 03643 TTF/8
034579,000731: 31,3265 74203 DMP* VXSC
034580,000732: 31,3266 02433 GAINBRAK,1 # NUMERO MYSTERIOSO
034581,000733: 31,3267 02265 ANGTERM
034582,000734: 31,3270 77655 VAD
![]() |
Page 805 |
034584,000736: 31,3271 03635 LAND
034585,000737: 31,3272 47051 VSU RTB
034586,000738: 31,3273 03521 R
034587,000739: 31,3274 21727 NORMUNIT
034588,000740: 31,3275 47035 VXV RTB
034589,000741: 31,3276 03635 LAND
034590,000742: 31,3277 21727 NORMUNIT
034591,000743: 31,3300 26603 STOVL CG +6 # SECOND ROW
034592,000744: 31,3301 02575 CG
034593,000745: 31,3302 76435 VXV VSL1
034594,000746: 31,3303 02603 CG +6
034595,000747: 31,3304 02611 STORE CG +14
034596,000748: 31,3305 77776 EXIT
034597,000749:
![]() |
In the printout, the following two lines (and possibly the EXIT above) are circled in red. |
034600,000752: 31,3306 51621 EXITSPOT INDEX WCHPHOLD
034601,000753: 31,3307 12367 TCF WHATEXIT
034602,000754:
034603,000755: # ****************************************************************************************************************
034604,000756: # ROUTINES FOR EXITING FROM LANDING GUIDANCE
034605,000757: # ****************************************************************************************************************
034606,000758:
034607,000759: # 1. EXGSUB IS THE RETURN WHEN GUIDSUB IS CALLED BY THE IGNITION ALGORITHM.
034608,000760:
034609,000761: # 2. EXBRAK IN THE EXIT USED DURING THE BRAKING PHASE. IN THIS CASE UNIT(R) IS THE WINDOW POINTING VECTOR.
034610,000762:
034611,000763: # 3. EXNORM IS THE EXIT USED AT OTHER TIMES DURING THE BURN.
034612,000764:
034613,000765: # (EXOVFLOW IS A SUBROUTINE OF EXBRAK AND EXNORM CALLED WHEN OVERFLOW OCCURRED ANYWHERE IN GUIDANCE.)
034614,000766:
034615,000767: 31,3310 06042 EXGSUB TC INTPRET # COMPUTE TRIM VELOCITY CORRECTION TERM
034616,000768: 31,3311 47175 VLOAD RTB
034617,000769: 31,3312 03254 UNFC/2
034618,000770: 31,3313 21727 NORMUNIT
034619,000771: 31,3314 74361 VXSC VXSC
034620,000772: 31,3315 03423 ZOOMTIME
034621,000773: 31,3316 22001 TRIMACCL
034622,000774: 31,3317 03254 STORE UNFC/2
034623,000775: 31,3320 77776 EXIT
034624,000776:
034625,000777: 31,3321 11647 CCS NGUIDSUB
034626,000778: 31,3322 12406 TCF GUIDSUB
034627,000779: 31,3323 11646 CCS NIGNLOOP
034628,000780: 31,3324 13327 TCF +3
034629,000781: 31,3325 05567 TC ALARM
034630,000782: 31,3326 01412 OCT 01412
034631,000783:
034632,000784: 31,3327 04635 +3 TC POSTJUMP
034633,000785: 31,3330 65103 CADR DDUMCALC
034634,000786:
034635,000787: 31,3331 06042 EXBRAK TC INTPRET
![]() |
Page 806 |
034637,000789: 31,3332 77775 VLOAD
034638,000790: 31,3333 03537 UNIT/R/
034639,000791: 31,3334 03262 STORE UNWC/2
034640,000792: 31,3335 77776 EXIT
034641,000793: 31,3336 13411 TCF STEER?
034642,000794:
![]() |
In the printout, there is a hand-drawn, downward-facing bracket, spanning the entire line below, hand-drawn in red. |
034645,000797: 31,3337 06042 EXNORM TC INTPRET
034646,000798: 31,3340 52375 VLOAD VSU
034647,000799: 31,3341 03635 LAND
034648,000800: 31,3342 03521 R
034649,000801: 31,3343 77634 RTB
034650,000802: 31,3344 21727 NORMUNIT
034651,000803: 31,3345 03262 STORE UNWC/2 # UNIT(LAND - R) IS TENTATIVE CHOICE
034652,000804: 31,3346 50235 VXV DOT
034653,000805: 31,3347 02146 XNBPIP
034654,000806: 31,3350 02603 CG +6
034655,000807: 31,3351 77776 EXIT # WITH PROJ IN MPAC 1/8 REAL SIZE
034656,000808:
034657,000809: 31,3352 40154 CS MPAC # GET COEFFICIENT FOR CG +14
034658,000810: 31,3353 63734 AD PROJMAX
034659,000811: 31,3354 64733 AD POSMAX
034660,000812: 31,3355 54130 TS BUF
034661,000813: 31,3356 40130 CS BUF
034662,000814: 31,3357 26130 ADS BUF # RESULT IS 0 IF PROJMAX - PROJ NEGATIVE
034663,000815:
034664,000816: 31,3360 43735 CS PROJMIN # GET COEFFICIENT FOR UNIT(LAND - R)
034665,000817: 31,3361 60154 AD MPAC
034666,000818: 31,3362 64733 AD POSMAX
034667,000819: 31,3363 54131 TS BUF +1
034668,000820: 31,3364 40131 CS BUF +1
034669,000821: 31,3365 26131 ADS BUF +1 # RESULT IS 0 IF PROJ - PROJMIN NEGATIVE
034670,000822:
034671,000823: 31,3366 34751 CAF FOUR
034672,000824: 31,3367 76245 UNWCLOOP MASK SIX
034673,000825: 31,3370 54002 TS Q
034674,000826: 31,3371 35014 CA EBANK5
034675,000827: 31,3372 54003 TS EBANK
034676,000828: 31,3373 E5,1574 EBANK= CG
034677,000829: 31,3373 30130 CA BUF
034678,000830: 31,3374 00006 EXTEND
034679,000831: 31,3375 50002 INDEX Q
034680,000832: 31,3376 71610 MP CG +14
034681,000833: 31,3377 24006 INCR BBANK
034682,000834: 31,3400 E6,1661 EBANK= UNWC/2
034683,000835: 31,3400 50002 INDEX Q
034684,000836: 31,3401 53662 DXCH UNWC/2
034685,000837: 31,3402 00006 EXTEND
034686,000838: 31,3403 70131 MP BUF +1
034687,000839: 31,3404 50002 INDEX Q
034688,000840: 31,3405 21662 DAS UNWC/2
![]() |
Page 807 |
034690,000842: 31,3406 10002 CCS Q
034691,000843: 31,3407 13367 TCF UNWCLOOP
034692,000844:
034693,000845: 31,3410 24006 INCR BBANK
034694,000846: 31,3411 E7,1612 EBANK= PIF
034695,000847:
034696,000848: 31,3411 30076 STEER? CA FLAGWRD2 # IF STEERSW DOWN NO OUTPUTS
034697,000849: 31,3412 74741 MASK STEERBIT
034698,000850: 31,3413 00006 EXTEND
034699,000851: 31,3414 13422 BZF RATESTOP
034700,000852:
034701,000853: 31,3415 30121 EXVERT CA OVFIND # IF OVERFLOW ANYWHERE IN GUIDANCE
034702,000854: 31,3416 00006 EXTEND # DON'T CALL THROTTLE OR FINDCDUW
034703,000855: 31,3417 13432 BZF +13
034704,000856:
034705,000857: 31,3420 05567 EXOVFLOW TC ALARM # SOUND THE ALARM NON-ABORTIVELY.
034706,000858: 31,3421 01410 OCT 01410
034707,000859:
034708,000860: 31,3422 34737 RATESTOP CAF BIT13 # ARE WE IN ATTITUDE-HOLD?
034709,000861: 31,3423 00006 EXTEND
034710,000862: 31,3424 02031 RAND CHAN31
034711,000863: 31,3425 00006 EXTEND
034712,000864: 31,3426 13437 BZF DISPEXIT # YES
034713,000865:
034714,000866: 31,3427 04616 TC BANKCALL # NO: DO A STOPRATE
034715,000867: 31,3430 40166 CADR STOPRATE
034716,000868:
034717,000869: 31,3431 13437 TCF DISPEXIT
034718,000870:
034719,000871: 31,3432 02144 GDUMP1 TC THROTTLE
034720,000872: 31,3433 06042 TC INTPRET
034721,000873: 31,3434 77624 CALL
034722,000874: 31,3435 61076 FINDCDUW -2
034723,000875: 31,3436 77776 EXIT
034724,000876:
034725,000877: # (CONTINUE TO DISPEXIT)
034726,000878:
034727,000879: # ****************************************************************************************************************
034728,000880: # GUIDANCE LOOP DISPLAYS
034729,000881: # ****************************************************************************************************************
034730,000882:
034731,000883: 31,3437 00006 DISPEXIT EXTEND # KILL GROUP 3: DISPLAYS WILL BE
034732,000884: 31,3440 34755 DCA NEG0 # RESTORED BY NEXT GUIDANCE CYCLE
034733,000885: 31,3441 52756 DXCH -PHASE3
034734,000886:
034735,000887: 31,3442 31,3442 ENDLLJOB = DISPEXIT +3
034736,000888:
034737,000889: 31,3442 40104 +3 CS FLAGWRD8 # IF FLUNDISP IS SET, NO DISPLAY THIS PASS
![]() |
Page 808 |
034739,000891: 31,3443 74742 MASK FLUNDBIT
034740,000892: 31,3444 00006 EXTEND
034741,000893: 31,3445 15155 BZF ENDOFJOB
034742,000894:
034743,000895: 31,3446 51621 INDEX WCHPHOLD
034744,000896: 31,3447 12371 TCF WHATDISP
034745,000897:
034746,000898: 31,3450 33736 P63DISPS CAF V06N63
034747,000899: 31,3451 04616 DISPCOMN TC BANKCALL
034748,000900: 31,3452 20466 CADR REGODSP
034749,000901:
034750,000902: 31,3453 31666 P64DISPS CA TREDES # HAS TREDES REACHED ZERO?
034751,000903: 31,3454 00006 EXTEND
034752,000904: 31,3455 13476 BZF RED-OVER # YES: CLEAR REDESIGNATION FLAG
034753,000905:
034754,000906: 31,3456 40102 CS FLAGWRD6 # NO: IS REDFLAG SET?
034755,000907: 31,3457 74746 MASK REDFLBIT
034756,000908: 31,3460 00006 EXTEND
034757,000909: 31,3461 13500 BZF REDES-OK # YES: DO STATIC DISPLAY
034758,000910:
034759,000911: 31,3462 33737 CAF V06N64 # OTHERWISE USE FLASHING DISPLAY
034760,000912: 31,3463 04616 TC BANKCALL
034761,000913: 31,3464 20460 CADR REFLASH
034762,000914: 31,3465 16001 TCF GOTOPOOH # TERMINATE
034763,000915: 31,3466 13470 TCF P64CEED # PROCEED PERMIT REDESIGNATIONS
034764,000916: 31,3467 13453 TCF P64DISPS # RECYCLE
034765,000917:
![]() |
In the printout, the following three lines are grouped together by hand-drawn lines, in blue, to the left and the right. |
034768,000920: 31,3470 34755 P64CEED CAF ZERO
034769,000921: 31,3471 55446 TS ELINCR1
034770,000922: 31,3472 55445 TS AZINCR1
034771,000923:
034772,000924: 31,3473 05504 TC UPFLAG # ENABLE REDESIGNATION LOGIC
034773,000925: 31,3474 00143 ADRES REDFLAG
034774,000926:
034775,000927: 31,3475 15155 TCF ENDOFJOB
034776,000928:
034777,000929: 31,3476 05516 RED-OVER TC DOWNFLAG
034778,000930: 31,3477 00143 ADRES REDFLAG
034779,000931: 31,3500 33737 REDES-OK CAF V06N64
034780,000932: 31,3501 13451 TCF DISPCOMN
034781,000933:
034782,000934:
034783,000935: 31,3502 33740 VERTDISP CAF V06N60
034784,000936: 31,3503 04616 TC BANKCALL
034785,000937: 31,3504 20460 CADR REFLASH
034786,000938: 31,3505 16001 TCF GOTOPOOH # TERMINATE
034787,000939: 31,3506 13510 TCF STOPFIRE # PROCEED
034788,000940: 31,3507 13510 TCF STOPFIRE # V32E
034789,000941:
034790,000942: 31,3510 00004 STOPFIRE INHINT
![]() |
Page 809 |
034792,000944: 31,3511 04616 TC BANKCALL
034793,000945: 31,3512 40154 CADR ZATTEROR
034794,000946: 31,3513 15155 TCF ENDOFJOB
034795,000947:
034796,000948: # ****************************************************************************************************************
034797,000949: # GUIDANCE FOR P65
034798,000950: # ****************************************************************************************************************
034799,000951:
034800,000952: 31,3514 11647 VERTGUID CCS WCHVERT
![]() |
In the printout, in the line below, "TCF P67VERT" has been manually crossed out. |
034803,000955: 31,3515 13524 TCF P67VERT # POSITIVE NON-ZERO ---> P67
034804,000956: 31,3516 13522 TCF P66VERT # +0
034805,000957:
034806,000958: # THE P65 GUIDANCE EQUATION IS AS FOLLOWS:-
034807,000959:
034808,000960: # - -
034809,000961: # V2FG - VGU
034810,000962: # ACG = ----------
034811,000963: # TAUVERT
034812,000964:
034813,000965: 31,3517 06042 P65VERT TC INTPRET
034814,000966: 31,3520 77650 GOTO
034815,000967: 31,3521 65271 P65VERTA
034816,000968:
![]() |
Page 810 |
034818,000970: # ****************************************************************************************************************
034819,000971: # GUIDANCE FOR P66
034820,000972: # ****************************************************************************************************************
034821,000973:
034822,000974: 31,3522 04635 P66VERT TC POSTJUMP
034823,000975: 31,3523 65277 CADR P66VERTA
034824,000976:
034825,000977: 31,3524 05353 P67VERT TC PHASCHNG # TERMINATE GROUP 3
034826,000978: 31,3525 00003 OCT 00003
034827,000979:
![]() |
In the printout, the following group of 4 lines has been manually scratched out. |
034830,000982: 31,3526 06042 TC INTPRET
034831,000983: 31,3527 52175 VLOAD GOTO
034832,000984: 31,3530 03527 V
034833,000985: 31,3531 65526 VHORCOMP
034834,000986:
034835,000987: 32,2000 SETLOC P66LOC
034836,000988: 32,2000 BANK
034837,000989: 32,3264 COUNT* $$/F2DPS
034838,000990:
034839,000991: 32,3264 37713 RODTASK CAF PRIO22
034840,000992: 32,3265 05105 TC FINDVAC
034841,000993: 32,3266 E7,1515 EBANK= DVCNTR
034842,000994: 32,3266 03304 64067 2CADR RODCOMP
034843,000995:
034844,000996: 32,3270 15261 TCF TASKOVER
034845,000997:
034846,000998: 32,3271 52375 P65VERTA VLOAD VSU
034847,000999: 32,3272 02511 V2FG
034848,001000: 32,3273 03627 VGU
034849,001001: 32,3274 52141 V/SC GOTO
034850,001002: 32,3275 02517 TAUVERT
034851,001003: 32,3276 63164 AFCCALC1
034852,001004:
034853,001005: 32,3277 05353 P66VERTA TC PHASCHNG # TERMINATE GROUP 3.
034854,001006: 32,3300 00003 OCT 00003
034855,001007:
034856,001008: 32,3301 34777 CAF 1SEC
034857,001009: 32,3302 05173 TC TWIDDLE
034858,001010: 32,3303 03264 ADRES RODTASK
034859,001011:
![]() |
In the printout, the INHINT below has a hand-drawn check-mark next to it. |
034861,001013: 32,3304 00004 RODCOMP INHINT
034862,001014: 32,3305 34755 CAF ZERO
034863,001015: 32,3306 57746 XCH RODCOUNT
034864,001016: 32,3307 00006 EXTEND
034865,001017: 32,3310 71756 MP RODSCAL1
034866,001018: 32,3311 21645 DAS VDGVERT # UPDATE DESIRED ALTITUDE RATE.
034867,001019:
034868,001020: 32,3312 00006 EXTEND # SET OLDPIPAX,Y,Z = PIPAX,Y,Z
034869,001021: 32,3313 30040 DCA PIPAX
034870,001022: 32,3314 53764 DXCH OLDPIPAX
![]() |
Page 811 |
034872,001024: 32,3315 52071 DXCH RUPTREG1 # SET RUPTREG1,2,3 = OLDPIPAX,Y,Z
034873,001025: 32,3316 30041 CA PIPAZ
034874,001026: 32,3317 57765 XCH OLDPIPAZ
034875,001027: 32,3320 56072 XCH RUPTREG3
034876,001028:
034877,001029: 32,3321 00006 EXTEND # SHAPSHOT TIME OF PIPA READING.
034878,001030: 32,3322 30025 DCA TIME2
034879,001031: 32,3323 53762 DXCH THISTPIP
034880,001032:
034881,001033: 32,3324 31763 CA OLDPIPAX
034882,001034: 32,3325 61157 AD PIPATMPX
034883,001035: 32,3326 54154 TS MPAC # MPAC(X) = PIPAX + PIPATMPX
034884,001036: 32,3327 31764 CA OLDPIPAY
034885,001037: 32,3330 61160 AD PIPATMPY
034886,001038: 32,3331 54157 TS MPAC +3 # MPAC(Y) = PIPAY + PIPATMPY
034887,001039: 32,3332 31765 CA OLDPIPAZ
034888,001040: 32,3333 61161 AD PIPATMPZ
034889,001041: 32,3334 54161 TS MPAC +5 # MPAC(Z) = PIPAZ + PIPATMPZ
034890,001042:
034891,001043: 32,3335 41763 CS OLDPIPAX
034892,001044: 32,3336 61253 AD TEMX
034893,001045: 32,3337 60070 AD RUPTREG1
034894,001046: 32,3340 55766 TS DELVROD
034895,001047: 32,3341 41764 CS OLDPIPAY
034896,001048: 32,3342 61254 AD TEMY
034897,001049: 32,3343 60071 AD RUPTREG2
034898,001050: 32,3344 55770 TS DELVROD +2
034899,001051: 32,3345 41765 CS OLDPIPAZ
034900,001052: 32,3346 61255 AD TEMZ
034901,001053: 32,3347 60072 AD RUPTREG3
034902,001054: 32,3350 55772 TS DELVROD +4
034903,001055:
034904,001056: 32,3351 34755 CAF ZERO
034905,001057: 32,3352 54155 TS MPAC +1 # ZERO LO-ORDER MPAC COMPONENTS
034906,001058: 32,3353 54160 TS MPAC +4
034907,001059: 32,3354 54162 TS MPAC +6
034908,001060: 32,3355 55253 TS TEMX # ZERO TEMX, TEMY, AND TEMZ SO WE WILL
034909,001061: 32,3356 55254 TS TEMY # KNOW WHEN READACCS CHANGES THEM.
034910,001062: 32,3357 55255 TS TEMZ
034911,001063: 32,3360 44753 CS ONE
![]() |
In the printout, to the right of the following two lines, there is a hand-written note. Don Eyles says he believes it reads "pipa accel", which makes sense given that the comment that follows refers to rescaling the PIPA reading in the MPAC. |
034916,001068: 32,3361 54163 TS MODE
034917,001069: 32,3362 06042 TC INTPRET
034918,001070: 32,3363 65361 ITRPNT1 VXSC PDDL # SCALE MPAC TO M/CS *2(-7) AND PUSH (6)
034919,001071: 32,3364 26022 KPIP1
034920,001072: 32,3365 03762 THISTPIP
034921,001073: 32,3366 77625 DSU
034922,001074: 32,3367 01234 PIPTIME
034923,001075: 32,3370 00037 STORE 30D # 30-31D CONTAINS TIME IN CS SINCE PIPTIME
034924,001076: 32,3371 63271 DDV PDVL # (8)
034925,001077: 32,3372 27112 4SEC(28)
![]() |
Page 812 |
034927,001079: 32,3373 01236 GDT/2
034928,001080: 32,3374 74251 VSU VXSC # (6)
034929,001081: 32,3375 02621 VBIAS
034930,001082: 32,3376 53352 VSL2 VAD
034931,001083: 32,3377 03527 V
034932,001084: 32,3400 45455 VAD STADR # (0)
034933,001085: 32,3401 53746 STOVL 24D # STORE UPDATED VELOCITY IN 24-29D
034934,001086: 32,3402 03521 R
034935,001087: 32,3403 77656 UNIT
034936,001088: 32,3404 00017 STORE 14D
034937,001089: 32,3405 72441 DOT SL1
034938,001090: 32,3406 00031 24D
034939,001091: 32,3407 17474 STODL HDOTDISP # UPDATE ALTITUDE RATE FOR NOUN 60
034940,001092: 32,3410 00037 30D
034941,001093: 32,3411 41261 SL DMP
034942,001094: 32,3412 20214 11D
034943,001095: 32,3413 03474 HDOTDISP
034944,001096: 32,3414 45215 DAD DSU
034945,001097: 32,3415 00045 36D
034946,001098: 32,3416 02333 /LAND/
034947,001099: 32,3417 17775 STODL HCALC1 # UPDATE ALTITUDE FOR NOUN 60
034948,001100: 32,3420 03474 HDOTDISP
034949,001101: 32,3421 56221 BDSU DDV
034950,001102: 32,3422 03645 VDGVERT
034951,001103: 32,3423 02541 TAUROD
034952,001104: 32,3424 51515 PDVL ABVAL # (2)
034953,001105: 32,3425 01236 GDT/2
034954,001106: 32,3426 60471 DDV SR2
034955,001107: 32,3427 05652 GSCALE
034956,001108: 32,3430 00025 STORE 20D
034957,001109: 32,3431 77615 DAD # (0)
034958,001110: 32,3432 45115 PDVL CALL # (2)
034959,001111: 32,3433 06522 UNITX
034960,001112: 32,3434 47663 CDU*NBSM
034961,001113: 32,3435 77641 DOT
034962,001114: 32,3436 00017 14D
034963,001115: 32,3437 00027 STORE 22D
034964,001116: 32,3440 45465 BDDV STADR # (0)
034965,001117: 32,3441 50313 STOVL /AFC/
034966,001118: 32,3442 03767 DELVROD
034967,001119: 32,3443 53361 VXSC VAD
034968,001120: 32,3444 26022 KPIP1
034969,001121: 32,3445 02621 VBIAS
034970,001122: 32,3446 65246 ABVAL PDDL # (2)
034971,001123: 32,3447 03762 THISTPIP
034972,001124: 32,3450 65225 DSU PDDL # (4)
034973,001125: 32,3451 03760 LASTTPIP
034974,001126: 32,3452 03762 THISTPIP
034975,001127: 32,3453 17760 STODL LASTTPIP # (2)
034976,001128: 32,3454 55271 DDV BDDV # (0)
![]() |
Page 813 |
034978,001130: 32,3455 25544 SHFTFACT
034979,001131: 32,3456 41325 PDDL DMP # (2)
034980,001132: 32,3457 03611 FWEIGHT
034981,001133: 32,3460 25543 BIT1H
034982,001134: 32,3461 56271 DDV DDV
034983,001135: 32,3462 01244 MASS
034984,001136: 32,3463 22006 SCALEFAC
034985,001137: 32,3464 65215 DAD PDDL # (4)
034986,001138: 32,3465 00001 0D
034987,001139: 32,3466 00025 20D
034988,001140: 32,3467 45271 DDV DSU # (2)
034989,001141: 32,3470 00027 22D
034990,001142: 32,3471 43205 DMP DAD
![]() |
In the printout, there is a hand-written arrow pointing at "LAG/TAU" in the line below. |
034992,001144: 32,3472 02543 LAG/TAU
034993,001145: 32,3473 03464 /AFC/
034994,001146: 32,3474 56325 PDDL DDV # (4)
034995,001147: 32,3475 02547 MAXFORCE
034996,001148: 32,3476 01244 MASS
034997,001149: 32,3477 56325 PDDL DDV # (6)
034998,001150: 32,3500 02545 MINFORCE
034999,001151: 32,3501 01244 MASS
035000,001152: 32,3502 44206 PUSH BDSU # (8)
035001,001153: 32,3503 00003 2D
035002,001154: 32,3504 71240 BMN DLOAD # (6)
035003,001155: 32,3505 65513 AFCSPOT
035004,001156: 32,3506 41545 DLOAD PUSH # (6)
035005,001157: 32,3507 51021 BDSU BPL
035006,001158: 32,3510 00003 2D
035007,001159: 32,3511 65513 AFCSPOT
035008,001160: 32,3512 77745 DLOAD # (4)
035009,001161: 32,3513 77745 AFCSPOT DLOAD # (2),(4),OR (6)
035010,001162: 32,3514 77601 SETPD # (2)
035011,001163: 32,3515 00003 2D
035012,001164: 32,3516 17464 STODL /AFC/ # (0)
035013,001165: 32,3517 77776 ITRPNT2 EXIT
035014,001166: 32,3520 52155 DXCH MPAC # MPAC = MEASURED ACCELERATION.
035015,001167: 32,3521 04616 TC BANKCALL
035016,001168: 32,3522 62147 CADR THROTTLE +3
035017,001169: 32,3523 06042 TC INTPRET
035018,001170: 32,3524 77775 VLOAD # PICK UP UPDATED VELOCITY VECTOR.
035019,001171: 32,3525 00031 24D
035020,001172: 32,3526 53352 VHORCOMP VSL2 VAD
035021,001173: 32,3527 03734 DELVS
035022,001174: 32,3530 63342 VSR2 PDVL # (6)
035023,001175: 32,3531 03521 R
035024,001176: 32,3532 74256 UNIT VXSC
035025,001177: 32,3533 03474 HDOTDISP
035026,001178: 32,3534 51372 VSL1 BVSU # (0)
035027,001179: 32,3535 77646 ABVAL
035028,001180: 32,3536 02263 STORE VHORIZ # UPDATE HORIZONTAL VELOCITY FOR NOUN 60
![]() |
Page 814 |
035030,001182: 32,3537 77776 EXIT
035031,001183: 32,3540 04616 TC BANKCALL # PUT UP V06N60 DISPLAY BUT AVOID PHASCHNG
035032,001184: 32,3541 63442 CADR DISPEXIT +3
035033,001185:
035034,001186: 32,3542 00001 BIT1H OCT 00001
035035,001187: 32,3543 00000 04000 SHFTFACT 2DEC 1 B-17
035036,001188: 32,3545 00000 05075 BIASFACT 2DEC 655.36 B-26
035037,001189:
035038,001190: # ****************************************************************************************************************
035039,001191: # REDESIGNATOR TRAP
035040,001192: # ****************************************************************************************************************
035041,001193:
035042,001194: 11,2302 BANK 11
035043,001195: 11,2000 SETLOC F2DPS*11
035044,001196: 11,2000 BANK
035045,001197:
035046,001198: 11,2302 COUNT* $$/F2DPS
035047,001199:
035048,001200: 11,2302 56016 PITFALL XCH BANKRUPT
035049,001201: 11,2303 00006 EXTEND
035050,001202: 11,2304 22012 QXCH QRUPT
035051,001203:
035052,001204: 11,2305 05321 TC CHECKMM # IF NOT IN P64, NO REASON TO CONTINUE
035053,001205: 11,2306 00100 DEC 64 B-14
035054,001206: 11,2307 15270 TCF RESUME
035055,001207:
035056,001208: 11,2310 00006 EXTEND
035057,001209: 11,2311 00031 READ CHAN31
035058,001210: 11,2312 40000 COM
035059,001211: 11,2313 72401 MASK ALL4BITS
035060,001212: 11,2314 55444 TS ELVIRA
035061,001213: 11,2315 34752 CAF TWO
035062,001214: 11,2316 55443 TS ZERLINA
035063,001215: 11,2317 34756 CAF FIVE
035064,001216: 11,2320 05173 TC TWIDDLE
035065,001217: 11,2321 02326 ADRES REDESMON
035066,001218: 11,2322 15270 TCF RESUME
035067,001219:
035068,001220: # REDESIGNATION MONITOR (INITIATED BY PITFALL)
035069,001221:
035070,001222: 11,2323 55443 PREMON1 TS ZERLINA
035071,001223: 11,2324 34757 PREMON2 CAF SEVEN
035072,001224: 11,2325 05224 TC VARDELAY
035073,001225: 11,2326 00006 REDESMON EXTEND
035074,001226: 11,2327 00031 READ 31
035075,001227: 11,2330 40000 COM
035076,001228: 11,2331 72401 MASK ALL4BITS
![]() |
Page 815 |
035078,001230: 11,2332 57444 XCH ELVIRA
035079,001231: 11,2333 54001 TS L
035080,001232: 11,2334 11444 CCS ELVIRA # DO ANY BITS APPEAR THIS PASS?
035081,001233: 11,2335 12324 TCF PREMON2 # Y: CONTINUE MONITOR
035082,001234:
035083,001235: 11,2336 10001 CCS L # N: ANY LAST PASS?
035084,001236: 11,2337 12347 TCF COUNT'EM # Y: COUNT 'EM, RESET RUPT, TERMINATE
035085,001237: 11,2340 11443 CCS ZERLINA # N: HAS ZERLINA REACHED ZERO YET?
035086,001238: 11,2341 12323 TCF PREMON1 # N: DIMINISH ZERLINA, CONTINUE
035087,001239: 11,2342 06022 RESETRPT TC C13STALL # Y: RESET RUPT, TERMINATE
035088,001240: 11,2343 34740 CAF BIT12
035089,001241: 11,2344 00006 EXTEND
035090,001242: 11,2345 05013 WOR CHAN13
035091,001243: 11,2346 15261 TCF TASKOVER
035092,001244:
035093,001245: 11,2347 34737 COUNT'EM CAF BIT13 # ARE WE IN ATTITUDE-HOLD?
035094,001246: 11,2350 00006 EXTEND
035095,001247: 11,2351 02031 RAND CHAN31
035096,001248: 11,2352 00006 EXTEND
035097,001249: 11,2353 12342 BZF RESETRPT # YES: SKIP REDESIGNATION LOGIC.
035098,001250:
035099,001251: 11,2354 30001 CA L # NO
035100,001252: 11,2355 74746 MASK -AZBIT
035101,001253: 11,2356 10000 CCS A
035102,001254: 11,2357 42402 -AZ CS AZEACH
035103,001255: 11,2360 27445 ADS AZINCR1
035104,001256: 11,2361 30001 CA L
035105,001257: 11,2362 74747 MASK +AZBIT
035106,001258: 11,2363 10000 CCS A
035107,001259: 11,2364 32402 +AZ CA AZEACH
035108,001260: 11,2365 27445 ADS AZINCR1
035109,001261: 11,2366 30001 CA L
035110,001262: 11,2367 74753 MASK -ELBIT
035111,001263: 11,2370 10000 CCS A
035112,001264: 11,2371 42403 -EL CS ELEACH
035113,001265: 11,2372 27446 ADS ELINCR1
035114,001266: 11,2373 30001 CA L
035115,001267: 11,2374 74752 MASK +ELBIT
035116,001268: 11,2375 10000 CCS A
035117,001269: 11,2376 32403 +EL CA ELEACH
035118,001270: 11,2377 27446 ADS ELINCR1
035119,001271: 11,2400 12342 TCF RESETRPT
035120,001272:
035121,001273: # THESE EQUIVALENCIES ARE BASED ON GSOP CHAPTER 4, REVISION 16 OF P64LM
035122,001274:
035123,001275: 11,2401 4752 +ELBIT = BIT2 # -PITCH
![]() |
Page 816 |
035125,001277: 11,2401 4753 -ELBIT = BIT1 # +PITCH
035126,001278: 11,2401 4747 +AZBIT = BIT5
035127,001279: 11,2401 4746 -AZBIT = BIT6
035128,001280:
035129,001281: 11,2401 00063 ALL4BITS OCT 00063
035130,001282: 11,2402 01074 AZEACH DEC .03491 # 2 DEGREES
035131,001283: 11,2403 00217 ELEACH DEC .00873 # 1/2 DEGREE
035132,001284:
035133,001285: # ****************************************************************************************************************
035134,001286: # R.O.D. TRAP
035135,001287: # ************************************************************************
035136,001288:
035137,001289: 23,2000 SETLOC RODTRAP
035138,001290: 23,2000 BANK
035139,001291: 23,2455 COUNT* $$/F2DPS # ****************************************
035140,001292:
035141,001293: 23,2455 74745 DESCBITS MASK BIT7 # COME HERE FROM MARKRUPT CODING WITH BIT
035142,001294: 23,2456 10000 CCS A # 7 OR 6 OF CHANNEL 16 IN A: BIT 7 MEANS
035143,001295: 23,2457 44752 CS TWO # - RATE INCREMENT, BIT 6 + INCREMENT
035144,001296: 23,2460 64753 AD ONE
035145,001297: 23,2461 27746 ADS RODCOUNT
035146,001298: 23,2462 15270 TCF RESUME # TRAP IS RESET WHEN SWITCH IS RELEASED
035147,001299:
035148,001300: 31,3532 BANK 31
035149,001301: 31,2000 SETLOC F2DPS*31
035150,001302: 31,2000 BANK
035151,001303:
035152,001304: 31,3532 COUNT* $$/F2DPS
035153,001305:
035154,001306: # ****************************************************************************************************************
035155,001307: # DOUBLE PRECISION ROOT FINDER SUBROUTINE (BY ALLAN KLUMPP)
035156,001308: # ****************************************************************************************************************
035157,001309:
035158,001310: # N N-1
035159,001311: # ROOTPSRS FINDS ONE ROOT OF THE POWER SERIES A X + A X + ... + A X + A
035160,001312: # N N-1 1 0
035161,001313:
035162,001314: # USING NEWTON'S METHOD STARTING WITH AN INITIAL GUESS FOR THE ROOT. THE ENTERING DATA MUST BE AS FOLLOWS:
![]() |
Page 817 |
035164,001316: # A SP LOC-3 ADRES FOR REFERENCING PWR COF TABL
035165,001317: # L SP N-1 N IS THE DEGREE OF THE POWER SERIES
035166,001318: # MPAC DP X INITIAL GUESS FOR ROOT
035167,001319:
035168,001320: # LOC-2N DP A(0)
035169,001321: # ...
035170,001322: # LOC DP A(N)
035171,001323: # LOC+2 SP PRECROOT PREC RQD OF ROOT (AS FRACT OF 1ST GUESS)
035172,001324:
035173,001325: # THE DP RESULT IS LEFT IN MPAC UPON EXIT, AND A SP COUNT OF THE ITERATIONS TO CONVERGENCE IS LEFT IN MPAC+2.
035174,001326: # RETURN IS NORMALLY TO LOC(TC ROOTPSRS)+3. IF ROOTPSRS FAILS TO CONVERGE IN 8 PASSES, RETURN IS TO LOC+1 AND
035175,001327: # OUTPUTS ARE NOT TO BE TRUSTED.
035176,001328:
035177,001329: # PRECAUTION: ROOTPSRS MAKES NO CHECKS FOR OVERFLOW OR FOR IMPROPER USAGE. IMPROPER USAGE COULD
035178,001330: # PRECLUDE CONVERGENCE OR REQUIRE EXCESSIVE ITERATIONS. AS A SPECIFIC EXAMPLE, ROOTPSRS FORMS A DERIVATIVE
035179,001331: # COEFFICIENT TABLE BY MULTIPLYING EACH A(I) BY I, WHERE I RANGES FROM 1 TO N. IF AN ELEMENT OF THE DERIVATIVE
035180,001332: # COEFFICIENT TABLE = 1 OR >1 IN MAGNITUDE, ONLY THE EXCESS IS RETAINED. ROOTPSRS MAY CONVERGE ON THE CORRECT
035181,001333: # ROOT NONETHELESS, BUT IT MAY TAKE AN EXCESSIVE NUMBER OF ITERATIONS. THEREFORE THE USER SHOULD RECOGNIZE:
035182,001334: # 1. USER'S RESPONSIBILITY TO ASSURE THAT I X A(I) < 1 IN MAGNITUDE FOR ALL I.
035183,001335: # 2. USER'S RESPONSIBILITY TO ASSURE OVERFLOW WILL NOT OCCUR IN EVALUATING EITHER THE RESIDUAL OR THE DERIVATIVE
035184,001336: # POWER SERIES. THIS OVERFLOW WOULD BE PRODUCED BY SUBROUTINE POWRSERS, CALLED BY ROOTPSRS, AND MIGHT NOT
035185,001337: # PRECLUDE EVENTUAL CONVERGENCE.
035186,001338: # 3. AT PRESENT, ERASABLE LOCATIONS ARE RESERVED ONLY FOR N UP TO 5. AN N IN EXCESS OF 5 WILL PRODUCE CHAOS.
035187,001339: # ALL ERASABLES USED BY ROOTPSRS ARE UNSWITCHED LOCATED IN THE REGION FROM MPAC-33 OCT TO MPAC+7.
035188,001340: # 4. THE ITERATION COUNT RETURNED IN MPAC+2 MAY BE USED TO DETECT ABNORMAL PERFORMANCE.
035189,001341:
035190,001342: # STORE ENTERING DATA, INITLIZE ERASABLES
035191,001343: 31,3532 00006 ROOTPSRS EXTEND
![]() |
In the printout, the following two instructions are manually encircled. |
035193,001345: 31,3533 22132 QXCH RETROOT # RETURN ADRES
035194,001346: 31,3534 54117 TS PWRPTR # PWR TABL POINTER
035195,001347: 31,3535 52160 DXCH MPAC +3 # PWR TABL ADRES, N-1
035196,001348: 31,3536 33655 CA DERTABLL
035197,001349: 31,3537 54141 TS DERPTR # DER TABL POINTER
035198,001350: 31,3540 54161 TS MPAC +5 # DER TABL ADRES
035199,001351: 31,3541 10160 CCS MPAC +4 # NO POWER SERIES OF DEGREE 1 OR LESS
035200,001352: 31,3542 54162 TS MPAC +6 # N-2
035201,001353: 31,3543 34755 CA ZERO # MODE USED AS ITERATION COUNTER. MODE
035202,001354: 31,3544 54163 TS MODE # MUST BE POS SO ABS WON'T COMP MPAC+3 ETC
035203,001355:
035204,001356: # COMPUTE CRITERION TO STOP ITERATING
035205,001357: 31,3545 00006 EXTEND
035206,001358: 31,3546 30155 DCA MPAC # FETCH ROOT GUESS, KEEPING IT IN MPAC
035207,001359: 31,3547 52127 DXCH ROOTPS # AND IN ROOTPS
035208,001360: 31,3550 50157 INDEX MPAC +3 # PWR TABL ADRES
![]() |
Page 818 |
035210,001362: 31,3551 30005 CA 5 # PRECROOT TO A
035211,001363: 31,3552 07312 TC SHORTMP # YIELDS DP PRODUCT IN MPAC
035212,001364: 31,3553 04713 TC USPRCADR
035213,001365: 31,3554 01226 CADR ABS # YIELDS ABVAL OF CRITERION ON DX IN MPAC
035214,001366: 31,3555 52155 DXCH MPAC
035215,001367: 31,3556 52125 DXCH DXCRIT # CRITERION
035216,001368:
035217,001369: # SET UP DER COF TABL
035218,001370: 31,3557 00006 EXTEND
035219,001371: 31,3560 50117 INDEX PWRPTR
035220,001372: 31,3561 30004 DCA 3
035221,001373: 31,3562 52155 DXCH MPAC # A(N) TO MPAC
035222,001374:
035223,001375: 31,3563 30160 CA MPAC +4 # N-1 TO A
035224,001376:
035225,001377: 31,3564 54140 DERCLOOP TS PWRCNT # LOOP COUNTER
035226,001378: 31,3565 64753 AD ONE
035227,001379: 31,3566 07321 TC DMPNSUB # YIELDS DERCOF = I X A(I) IN MPAC
035228,001380: 31,3567 00006 EXTEND
035229,001381: 31,3570 50117 INDEX PWRPTR
035230,001382: 31,3571 30002 DCA 1
035231,001383: 31,3572 52155 DXCH MPAC # A(I-1) TO MPAC, FETCHING DERCOF
035232,001384: 31,3573 50141 INDEX DERPTR
035233,001385: 31,3574 52004 DXCH 3 # DERCOF TO DER TABL
035234,001386: 31,3575 44752 CS TWO
035235,001387: 31,3576 26117 ADS PWRPTR # DECREMENT PWR POINTER
035236,001388: 31,3577 44752 CS TWO
035237,001389: 31,3600 26141 ADS DERPTR # DECREMENT DER POINTER
035238,001390: 31,3601 10140 CCS PWRCNT
035239,001391: 31,3602 13564 TCF DERCLOOP
035240,001392:
035241,001393: # CONVERGE ON ROOT
035242,001394: 31,3603 00006 ROOTLOOP EXTEND
035243,001395: 31,3604 30127 DCA ROOTPS # FETCH CURRENT ROOT
035244,001396: 31,3605 52155 DXCH MPAC # LEAVE IN MPAC
035245,001397: 31,3606 00006 EXTEND
035246,001398: 31,3607 30162 DCA MPAC +5 # LOAD A, L WITH DER TABL ADRES, N-2
035247,001399: 31,3610 07220 TC POWRSERS # YIELDS DERIVATIVE IN MPAC
035248,001400:
035249,001401: 31,3611 00006 EXTEND
035250,001402: 31,3612 30127 DCA ROOTPS
035251,001403: 31,3613 52155 DXCH MPAC # CURRENT ROOT TO MPAC, FETCHING DERIVTIVE
035252,001404: 31,3614 52131 DXCH BUF # LEAVE DERIVATIVE IN BUF AS DIVISOR
035253,001405: 31,3615 00006 EXTEND
035254,001406: 31,3616 30160 DCA MPAC +3 # LOAD A, L WITH PWR TABL ADRES, N-1
035255,001407: 31,3617 07220 TC POWRSERS # YIELDS RESIDUAL IN MPAC
035256,001408:
035257,001409: 31,3620 04713 TC USPRCADR
![]() |
Page 819 |
035259,001411: 31,3621 00353 CADR DDV/BDDV # YIELDS -DX IN MPAC
035260,001412:
035261,001413: 31,3622 00006 EXTEND
035262,001414: 31,3623 40155 DCS MPAC # FETCH DX, LEAVING -DX IN MPAC
035263,001415: 31,3624 20127 DAS ROOTPS # CORRECTED ROOT NOW IN ROOTPS
035264,001416:
035265,001417: 31,3625 04713 TC USPRCADR
035266,001418: 31,3626 01226 CADR ABS # YIELDS ABS(DX) IN MPAC
035267,001419: 31,3627 00006 EXTEND
035268,001420: 31,3630 40125 DCS DXCRIT
035269,001421: 31,3631 20155 DAS MPAC # ABS(DX)-ABS(DXCRIT) IN MPAC
035270,001422:
035271,001423: 31,3632 30163 CA MODE
035272,001424: 31,3633 74750 MASK BIT4 # KLUMPP SAYS GIVE UP AFTER EIGHT PASSES
035273,001425: 31,3634 10000 CCS A
035274,001426: 31,3635 00132 BADROOT TC RETROOT
035275,001427:
035276,001428: 31,3636 24163 INCR MODE # INCREMENT ITERATION COUNTER
035277,001429: 31,3637 10154 CCS MPAC # TEST HI ORDER DX
035278,001430: 31,3640 13603 TCF ROOTLOOP
035279,001431: 31,3641 13643 TCF TESTLODX
035280,001432: 31,3642 13647 TCF ROOTSTOR
035281,001433: 31,3643 10155 TESTLODX CCS MPAC +1 # TEST LO ORDER DX
035282,001434: 31,3644 13603 TCF ROOTLOOP
035283,001435: 31,3645 13647 TCF ROOTSTOR
035284,001436: 31,3646 13647 TCF ROOTSTOR
035285,001437: 31,3647 52127 ROOTSTOR DXCH ROOTPS
035286,001438: 31,3650 52155 DXCH MPAC
035287,001439: 31,3651 30163 CA MODE
035288,001440: 31,3652 54156 TS MPAC +2 # STORE SP ITERATION COUNT IN MPAC+2
035289,001441: 31,3653 50132 INDEX RETROOT
035290,001442: 31,3654 10002 TCF 2
035291,001443:
035292,001444: 31,3655 00147 DERTABLL ADRES DERCOFN -3
035293,001445:
035294,001446: # ****************************************************************************************************************
035295,001447: # TRASHY LITTLE SUBROUTINES
035296,001448: # ****************************************************************************************************************
035297,001449:
035298,001450: 31,3656 51346 INTPRETX INDEX WCHPHASE # SET X1 ON THE WAY TO THE INTERPRETER
035299,001451: 31,3657 42400 CS TARGTDEX
035300,001452: 31,3660 50120 INDEX FIXLOC
035301,001453: 31,3661 54046 TS X1
035302,001454: 31,3662 16042 TCF INTPRET
035303,001455:
035304,001456: 31,3663 31642 TDISPSET CA TTF/8
035305,001457: 31,3664 00006 EXTEND
035306,001458: 31,3665 74750 MP TSCALINV
![]() |
Page 820 |
035308,001460: 31,3666 53476 DXCH TTFDISP
035309,001461:
035310,001462: 31,3667 35014 CA EBANK5 # TREDES BECOMES ZERO TWO PASSES
035311,001463: 31,3670 54003 TS EBANK # BEFORE TCGFAPPR IS REACHED
035312,001464: 31,3671 E5,1470 EBANK= TCGFAPPR
035313,001465: 31,3671 31470 CA TCGFAPPR
035314,001466: 31,3672 24006 INCR BBANK
035315,001467: 31,3673 24006 INCR BBANK
035316,001468: 31,3674 E7,1642 EBANK= TTF/8
035317,001469: 31,3674 61642 AD TTF/8
035318,001470: 31,3675 00006 EXTEND
035319,001471: 31,3676 73731 MP TREDESCL
035320,001472: 31,3677 63726 AD -DEC103
035321,001473: 31,3700 64735 AD NEGMAX
035322,001474: 31,3701 54001 TS L
035323,001475: 31,3702 40001 CS L
035324,001476: 31,3703 60001 AD L
035325,001477: 31,3704 63730 AD +DEC99
035326,001478: 31,3705 64733 AD POSMAX
035327,001479: 31,3706 55666 TS TREDES
035328,001480: 31,3707 41666 CS TREDES
035329,001481: 31,3710 27666 ADS TREDES
035330,001482: 31,3711 00002 TC Q
035331,001483:
035332,001484: 31,3712 05642 1406POO TC POODOO
035333,001485: 31,3713 21406 OCT 21406
035334,001486: 31,3714 05567 1406ALM TC ALARM
035335,001487: 31,3715 01406 OCT 01406
035336,001488: 31,3716 13422 TCF RATESTOP
035337,001489:
035338,001490: # ****************************************************************************************************************
035339,001491: # SPECIALIZED "PHASCHNG" SUBROUTINE
035340,001492: # ****************************************************************************************************************
035341,001493:
035342,001494: 31,3717 E3,1440 EBANK= PHSNAME2
035343,001495: 31,3717 35007 FASTCHNG CA EBANK3 # SPECIALIZED 'PHASCHNG' ROUTINE
035344,001496: 31,3720 56003 XCH EBANK
035345,001497: 31,3721 52002 DXCH L
035346,001498: 31,3722 55442 TS PHSNAME3
035347,001499: 31,3723 22003 LXCH EBANK
035348,001500: 31,3724 E7,1621 EBANK= E2DPS
035349,001501: 31,3724 00000 TC A
035350,001502:
035351,001503: # ****************************************************************************************************************
035352,001504: # PARAMETER TABLE INDIRECT ADDRESSES
035353,001505: # ****************************************************************************************************************
035354,001506:
035355,001507: 31,3725 E5,1402 RDG = RBRFG
035356,001508: 31,3725 E5,1410 VDG = VBRFG
![]() |
Page 821 |
035358,001510: 31,3725 E5,1416 ADG = ABRFG
035359,001511: 31,3725 E5,1424 VDG2TTF = VBRFG*
035360,001512: 31,3725 E5,1426 ADG2TTF = ABRFG*
035361,001513: 31,3725 E5,1430 JDG2TTF = JBRFG*
035362,001514:
035363,001515: # ****************************************************************************************************************
035364,001516: # LUNAR LANDING CONSTANTS
035365,001517: # ***************************************************************************************************************
035366,001518:
035367,001519: 31,3725 01565 TABLTTFL ADRES TABLTTF +3 # ADDRESS FOR REFERENCING TTF TABLE
035368,001520: 31,3726 4740 TTFSCALE = BIT12
035369,001521: 31,3726 4750 TSCALINV = BIT4
035370,001522: 31,3726 77630 -DEC103 DEC -103 B-14
035371,001523: 31,3727 00155 P64DB OCT 00155 # 0.3 DEGREES SCALED AT CDU SCALING
035372,001524: 31,3730 00143 +DEC99 DEC +99 B-14
035373,001525: 31,3731 75340 TREDESCL DEC -.08
035374,001526: 31,3732 00264 180DEGS DEC +180 B-14
035375,001527: 31,3733 00056 1/2DEG DEC +.00278
035376,001528: 31,3734 01542 PROJMAX DEC .42262 B-3 # SIN(25')/8 TO COMPARE WITH PROJ
035377,001529: 31,3735 01022 PROJMIN DEC .25882 B-3 # SIN(15')/8 TO COMPARE WITH PROJ
035378,001530: 31,3736 01477 V06N63 VN 0663 # P63
035379,001531: 31,3737 01500 V06N64 VN 0664 # P64
035380,001532: 31,3740 01474 V06N60 VN 0660 # P65, P66, P67
035381,001533:
035382,001534: 22,3647 BANK 22
035383,001535: 22,2000 SETLOC LANDCNST
![]() |
Page 822 |
035385,001537: 22,2000 BANK
035386,001538: 22,3647 COUNT* $$/F2DPS
035387,001539:
035388,001540: 22,3647 00021 14161 HIGHESTF 2DEC 4.34546769 B-12
035389,001541: 22,3651 01440 00000 GSCALE 2DEC 100 B-11
035390,001542: 22,3653 14000 00000 3/8DP 2DEC .375
035391,001543: 22,3655 30000 00000 3/4DP 2DEC .750
035392,001544: 22,3657 77534 45074 DEPRCRIT 2DEC -.02 B-1
035393,001545:
035394,001546: # ****************************************************************************************************************
035395,001547: # ****************************************************************************************************************
End of include-file LUNAR_LANDING_GUIDANCE_EQUATIONS.agc. Parent file is MAIN.agc