Source Code
![]() |
These source-code files were transcribed from scans made from Don Eyles's personal
copy of Luminary 069. They were scanned at archive.org's Boston
facility, and the scanning was sponsored by Onno Hommes. The code was transcribed
from these scans by a team of volunteers who are referenced in the program
comments. Comments from the original source code are prefixed with a single '#' symbol,
whereas comments added later are prefixed by "##" or "###". In some cases, where
similar code blocks exist in previously-transcribed AGC programs (primarily
Luminary 99, from Apollo 11) those code blocks were used as a starting point and
then corrected to agree with the Luminary 69 scans. The full scans are available
at the Virtual AGC
project's collection at archive.org, while more-convenient reduced-size (but reduced-quality)
images are available at
the main Virtual AGC website. Report any errors noted by creating an
issue report at the Virtual AGC
project's GitHub repository. Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 069 OF AGC PROGRAM LUMINARY BY NASA 2021112-011 19:02 NOV. 25,1968Note that the date is the date of the printout, not the date of the program revision. |
037388,000002: ## Copyright: Public domain.
037389,000003: ## Filename: ASCENT_GUIDANCE.agc
037390,000004: ## Purpose: The main source file for Luminary revision 069.
037391,000005: ## It is part of the source code for the original release
037392,000006: ## of the flight software for the Lunar Module's (LM) Apollo
037393,000007: ## Guidance Computer (AGC) for Apollo 10. The actual flown
037394,000008: ## version was Luminary 69 revision 2, which included a
037395,000009: ## newer lunar gravity model and only affected module 2.
037396,000010: ## This file is intended to be a faithful transcription, except
037397,000011: ## that the code format has been changed to conform to the
037398,000012: ## requirements of the yaYUL assembler rather than the
037399,000013: ## original YUL assembler.
037400,000014: ## Reference: pp. 844-857
037401,000015: ## Assembler: yaYUL
037402,000016: ## Contact: Ron Burkey <info@sandroid.org>.
037403,000017: ## Website: www.ibiblio.org/apollo/index.html
037404,000018: ## Mod history: 2016-12-13 MAS Created from Luminary 99.
037405,000019: ## 2016-12-18 MAS Updated from comment-proofed Luminary 99 version.
037406,000020: ## 2017-01-20 HG Transcribed
037407,000021: ## 2017-01-23 HG Fix value of SIN5DEG .008716 -> 0.08716
037408,000022: ## 2017-01-28 RSB Proofed comment text using octopus/prooferComments
037409,000023: ## and fixed errors found.
037410,000024: ## 2017-03-14 RSB Comment-text fixes identified in 5-way
037411,000025: ## side-by-side diff of Luminary 69/99/116/131/210.
037412,000026:
![]() |
Page 844 |
037414,000028: 34,3637 BANK 34
037415,000029: 34,2000 SETLOC ASCFILT
037416,000030: 34,2000 BANK
037417,000031:
037418,000032: 34,3637 E7,1513 EBANK= DVCNTR
037419,000033:
037420,000034: 34,3637 COUNT* $$/ASENT
037421,000035:
037422,000036: 34,3637 05353 ATMAG TC PHASCHNG
037423,000037: 34,3640 00035 OCT 00035
037424,000038: 34,3641 05353 TC PHASCHNG
037425,000039: 34,3642 05023 OCT 05023
037426,000040: 34,3643 21000 OCT 21000
037427,000041: 34,3644 06036 TC INTPRET
037428,000042: 34,3645 77614 BON
037429,000043: 34,3646 04705 FLRCS
037430,000044: 34,3647 60313 ASCENT
037431,000045: 34,3650 45345 DLOAD DSU
037432,000046: 34,3651 03512 ABDVCONV
037433,000047: 34,3652 21054 MINABDV
037434,000048: 34,3653 43040 BMN CLEAR
037435,000049: 34,3654 60767 ASCTERM4
037436,000050: 34,3655 04267 SURFFLAG
037437,000051: 34,3656 67214 CLEAR SLOAD
037438,000052: 34,3657 02676 RENDWFLG
037439,000053: 34,3660 17224 BIT3H
037440,000054: 34,3661 77471 DDV EXIT
037441,000055: 34,3662 03512 ABDVCONV
037442,000056: 34,3663 52155 DXCH MPAC
037443,000057: 34,3664 53637 DXCH 1/DV3
037444,000058: 34,3665 53635 DXCH 1/DV2
037445,000059: 34,3666 53633 DXCH 1/DV1
037446,000060: 34,3667 53567 DXCH 1/DV0
037447,000061: 34,3670 05353 TC PHASCHNG
037448,000062: 34,3671 04023 OCT 04023
037449,000063: 34,3672 06036 TC INTPRET
037450,000064: 34,3673 43345 DLOAD DAD
037451,000065: 34,3674 03567 1/DV0
037452,000066: 34,3675 03633 1/DV1
037453,000067: 34,3676 43215 DAD DAD
037454,000068: 34,3677 03635 1/DV2
037455,000069: 34,3700 03637 1/DV3
037456,000070: 34,3701 41205 DMP DMP
037457,000071: 34,3702 02261 VE
037458,000072: 34,3703 21041 2SEC(9)
037459,000073: 34,3704 65252 SL3 PDDL
037460,000074: 34,3705 02265 TBUP
037461,000075: 34,3706 43342 SR1 DAD
037462,000076: 34,3707 77625 DSU
037463,000077: 34,3710 21036 6SEC(18)
037464,000078:
![]() |
Page 845 |
037466,000080: 34,3711 16265 STODL TBUP
037467,000081: 34,3712 02261 VE
037468,000082: 34,3713 56342 SR1 DDV
037469,000083: 34,3714 02265 TBUP
037470,000084: 34,3715 36257 STCALL AT
037471,000085: 34,3716 60313 ASCENT
037472,000086:
![]() |
Page 846 |
037474,000088: 30,2313 BANK 30
037475,000089: 30,2000 SETLOC ASENT
037476,000090: 30,2000 BANK
037477,000091: 30,2313 COUNT* $$/ASENT
037478,000092:
037479,000093:
037480,000094: 30,2313 51575 ASCENT VLOAD ABVAL
037481,000095: 30,2314 03517 R
037482,000096: 30,2315 26275 STOVL /R/MAG
037483,000097: 30,2316 03535 UNIT/R/ # UR*2(-1)
037484,000098: 30,2317 53435 VXV UNIT
037485,000099: 30,2320 03716 QAXIS
037486,000100: 30,2321 02305 STORE ZAXIS1
037487,000101: 30,2322 72441 DOT SL1
037488,000102: 30,2323 03525 V # Z.V = ZDOT*2(-8).
037489,000103: 30,2324 26317 STOVL ZDOT # ZDOT*2(-7)
037490,000104: 30,2325 02305 ZAXIS1
037491,000105: 30,2326 76435 VXV VSL1
037492,000106: 30,2327 03535 UNIT/R/ # Z X UR = LAXIS*2(-2)
037493,000107: 30,2330 02277 STORE LAXIS # LAXIS*2(-1)
037494,000108: 30,2331 72441 DOT SL1
037495,000109: 30,2332 03525 V # L.V = YDOT*2(-8).
037496,000110: 30,2333 26315 STOVL YDOT # YDOT * 2(-7)
037497,000111: 30,2334 03535 UNIT/R/
037498,000112: 30,2335 72441 DOT SL1
037499,000113: 30,2336 03525 V
037500,000114: 30,2337 36313 STCALL RDOT # RDOT*2(-7)
037501,000115: 30,2340 57316 YCOMP
037502,000116: 30,2341 77775 VLOAD
037503,000117: 30,2342 03561 GDT1/2 # LOAD GDT1/2*2(-7) M/CS.
037504,000118: 30,2343 50341 V/SC DOT
037505,000119: 30,2344 27201 2SEC(18)
037506,000120: 30,2345 03535 UNIT/R/ # G.UR*2(9) = GR*2(9).
037507,000121: 30,2346 47315 PDVL VXV # STORE IN PDL(0) (2)
037508,000122: 30,2347 03535 UNIT/R/ # LOAD UNIT/R/ *2(-1).
037509,000123: 30,2350 03525 V # UR*2(-1) X V*2(-7) = H/R*2(-8).
037510,000124: 30,2351 56236 VSQ DDV # H(2)/R(2)*2(-16).
037511,000125: 30,2352 02275 /R/MAG # H(2)/R(3)*2(9).
037512,000126: 30,2353 43352 SL1 DAD
037513,000127: 30,2354 77626 STADR
037514,000128: 30,2355 61456 STODL GEFF # GEFF*2(10)M/CS/CS.
037515,000129: 30,2356 02273 ZDOTD
037516,000130: 30,2357 77625 DSU
037517,000131: 30,2360 02317 ZDOT
037518,000132: 30,2361 02347 STORE DZDOT # DZDOT = (ZDOTD - ZDOT) * 2(7)M/CS.
037519,000133: 30,2362 65361 VXSC PDDL
037520,000134: 30,2363 02305 ZAXIS1
037521,000135:
![]() |
Page 847 |
037523,000137: 30,2364 02271 YDOTD
037524,000138: 30,2365 77625 DSU
037525,000139: 30,2366 02315 YDOT
037526,000140: 30,2367 02345 STORE DYDOT # DYDOT = (YDOTD - YDOT)*2(7)M/CS.
037527,000141: 30,2370 65361 VXSC PDDL
037528,000142: 30,2371 02277 LAXIS
037529,000143: 30,2372 02267 RDOTD
037530,000144: 30,2373 77625 DSU
037531,000145: 30,2374 02313 RDOT
037532,000146: 30,2375 02343 STORE DRDOT # DRDOT = (RDOTD - RDOT)*2(7)M/CS.
037533,000147: 30,2376 53361 VXSC VAD
037534,000148: 30,2377 03535 UNIT/R/
037535,000149: 30,2400 76455 VAD VSL1
037536,000150: 30,2401 77626 STADR
037537,000151: 30,2402 74131 STORE VGVECT # VG = (DRDOT)R + (DYDOT)L + (DZDOT)Z.
037538,000152: 30,2403 77614 BON
037539,000153: 30,2404 04711 FLZONE0
037540,000154: 30,2405 65442 PREBRET1
037541,000155: 30,2406 77624 CALL
037542,000156: 30,2407 61011 ASCRSTRT
037543,000157: 30,2410 41345 DLOAD DMP # LOAD TGO
037544,000158: 30,2411 03515 TGO # TGO GEFF
037545,000159: 30,2412 02321 GEFF
037546,000160: 30,2413 76561 VXSC VSL1
037547,000161: 30,2414 03535 UNIT/R/ # TGO GEFF UR
037548,000162: 30,2415 77645 BVSU
037549,000163: 30,2416 03646 VGVECT # COMPENSATED FOR GEFF
037550,000164: 30,2417 03646 STORE VGVECT # STORE FOR DOWNLINK
037551,000165: 30,2420 76521 MXV VSL1 # GET VGBODY FOR N85 DISPLAY
037552,000166: 30,2421 02146 XNBPIP
037553,000167: 30,2422 27500 STOVL VGBODY
037554,000168: 30,2423 03646 VGVECT
037555,000169: 30,2424 43046 ABVAL BOFF # MAGNITUDE OF VGVECT
037556,000170: 30,2425 04745 FLRCS # IF FLRCS=0,DO NORMAL GUIDANCE
037557,000171: 30,2426 60433 MAINENG
037558,000172: 30,2427 77671 DDV # USE TGO=VG/AT WITH RCS
037559,000173: 30,2430 20001 AT/RCS
037560,000174: 30,2431 37515 STCALL TGO # THIS WILL BE USED ON NEXT CYCLE
037561,000175: 30,2432 60763 ASCTERM2
037562,000176: 30,2433 41471 MAINENG DDV PUSH # VG/VE IN PDL(0) (2)
037563,000177: 30,2434 02261 VE
037564,000178: 30,2435 44205 DMP BDSU # 1-KT VG/VE
037565,000179: 30,2436 21046 KT1
037566,000180: 30,2437 17743 NEARONE
037567,000181: 30,2440 41205 DMP DMP # TBUP VG(1-KT VG/VE)/VE (0)
037568,000182: 30,2441 02265 TBUP # = TGO
037569,000183: 30,2442 77625 DSU # COMPENSATE FOR TAILOFF
037570,000184: 30,2443 02263 TTO
037571,000185: 30,2444 03515 STORE TGO
037572,000186: 30,2445 57461 SR DCOMP
037573,000187:
![]() |
Page 848 |
037575,000189: 30,2446 20614 11D
037576,000190: 30,2447 17452 STODL TTOGO # TGO*2(-28)CS
037577,000191: 30,2450 03515 TGO
037578,000192: 30,2451 45214 BON DSU
037579,000193: 30,2452 03710 IDLEFLAG
037580,000194: 30,2453 60457 T2TEST
037581,000195: 30,2454 21026 4SEC(17) # ( TGO - 4 )*2(-17)CS.
037582,000196: 30,2455 77640 BMN
037583,000197: 30,2456 57212 ENGOFF
037584,000198: 30,2457 77745 T2TEST DLOAD
037585,000199: 30,2460 03515 TGO
037586,000200: 30,2461 50025 DSU BMN # IF TGO - T2 NEG., GO TO CMPONENT
037587,000201: 30,2462 21030 T2A
037588,000202: 30,2463 60620 CMPONENT
037589,000203: 30,2464 45345 DLOAD DSU
037590,000204: 30,2465 02265 TBUP
037591,000205: 30,2466 03515 TGO
037592,000206: 30,2467 45071 DDV CALL # 1-TGO/TBUP
037593,000207: 30,2470 02265 TBUP
037594,000208: 30,2471 65613 LOGSUB
037595,000209: 30,2472 41461 SL PUSH # -L IN PDL(0) (2)
037596,000210: 30,2473 20206 5
037597,000211: 30,2474 44265 BDDV BDSU # -TGO/L*2(-17)
037598,000212: 30,2475 03515 TGO
037599,000213: 30,2476 02265 TBUP # TBUP + TGO/L = D12*2(-17)
037600,000214: 30,2477 43006 PUSH BON # STORE IN PDL(2) (4)
037601,000215: 30,2500 04703 FLPC # IF FLPC = 1, GO TO CONST
037602,000216: 30,2501 60510 NORATES
037603,000217: 30,2502 45345 DLOAD DSU
037604,000218: 30,2503 03515 TGO
037605,000219: 30,2504 21032 T3
037606,000220: 30,2505 43044 BPL SET # FLPC=1
037607,000221: 30,2506 60516 RATES
037608,000222: 30,2507 04463 FLPC
037609,000223: 30,2510 77745 NORATES DLOAD
037610,000224: 30,2511 06424 HI6ZEROS
037611,000225: 30,2512 02355 STORE PRATE # B = 0
037612,000226: 30,2513 02357 STORE YRATE # D = 0
037613,000227: 30,2514 77650 GOTO
037614,000228: 30,2515 60600 CONST # GO TO CONST
037615,000229: 30,2516 45345 RATES DLOAD DSU
037616,000230: 30,2517 03515 TGO
037617,000231: 30,2520 00003 02D # TGO - D12 = D21*2(-17)
037618,000232: 30,2521 72406 PUSH SL1 # IN PDL(4) (6)
037619,000233: 30,2522 52421 BDSU SL3 # (1/2TGO - D21)*2(-13) = E * 2(-13)
037620,000234: 30,2523 03515 TGO # (8)
037621,000235: 30,2524 41325 PDDL DMP # IN PDL(6)
037622,000236: 30,2525 03515 TGO
037623,000237: 30,2526 02313 RDOT # RDOT TGO * 2(-24)
037624,000238: 30,2527 45215 DAD DSU # R + RDOT TGO
037625,000239:
![]() |
Page 849 |
037627,000241: 30,2530 02275 /R/MAG # R + RDOT TGO - RCO
037628,000242: 30,2531 03627 RCO # MPAC = -DR*2(-24).
037629,000243: 30,2532 41325 PDDL DMP # -DR IN PDL(8) (10)
037630,000244: 30,2533 02343 DRDOT
037631,000245: 30,2534 00005 04D # D21 DRDOT*2(-24)
037632,000246: 30,2535 62415 DAD SL2 # (D21 DRDOT-DR)*2(-22) (8)
037633,000247: 30,2536 56271 DDV DDV
037634,000248: 30,2537 00007 06D # (D21 DRDOT-DR)/E*2(-9)
037635,000249: 30,2540 03515 TGO
037636,000250: 30,2541 02355 STORE PRATE # B * 2(8)
037637,000251: 30,2542 71240 BMN DLOAD # B>0 NOT PERMITTED
037638,000252: 30,2543 60547 CHKBMAG
037639,000253: 30,2544 06424 HI6ZEROS
037640,000254: 30,2545 36355 STCALL PRATE
037641,000255: 30,2546 60561 PROK
037642,000256: 30,2547 56202 CHKBMAG SR4 DDV # B*2(4)
037643,000257: 30,2550 02265 TBUP # (B / TAU) * 2(21)
037644,000258: 30,2551 51025 DSU BPL
037645,000259: 30,2552 21050 PRLIMIT # ( B/ TAU) * 2(21) MAX.
037646,000260: 30,2553 60561 PROK
037647,000261: 30,2554 41345 DLOAD DMP
037648,000262: 30,2555 21050 PRLIMIT
037649,000263: 30,2556 02265 TBUP # B MAX. * 2(4)
037650,000264: 30,2557 77612 SL4 # BMAX*2(8)
037651,000265: 30,2560 02355 STORE PRATE
037652,000266: 30,2561 77745 PROK DLOAD
037653,000267: 30,2562 03515 TGO
037654,000268: 30,2563 43205 DMP DAD # YDOT TGO
037655,000269: 30,2564 02315 YDOT
037656,000270: 30,2565 02341 Y # Y + YDOT TGO
037657,000271: 30,2566 65225 DSU PDDL # Y + YDOT TGO - YCO
037658,000272: 30,2567 03631 YCO # MPAC = - DY*2(-24.) IN PDL(8) (10)
037659,000273: 30,2570 02345 DYDOT
037660,000274: 30,2571 43205 DMP DAD # D21 DYDOT - DY (8)
037661,000275: 30,2572 00005 04D
037662,000276: 30,2573 56271 DDV DDV
037663,000277: 30,2574 03515 TGO # (D21 DYDOT - DY)/ E TGO*2(6) (6)
037664,000278: 30,2575 40312 SL2 SETPD # MPAC = D*2(8)
037665,000279: 30,2576 00005 04D # (4)
037666,000280: 30,2577 02357 STORE YRATE
037667,000281: 30,2600 41345 CONST DLOAD DMP # LOAD B*2(8)
037668,000282: 30,2601 02355 PRATE # B D12*2(-9)
037669,000283: 30,2602 00003 02D
037670,000284: 30,2603 56325 PDDL DDV # D12 B IN PDL(4) (6)
037671,000285: 30,2604 02343 DRDOT # LOAD DRDOT*2(-7)
037672,000286: 30,2605 00001 00D # -DRDOT/L*2(-7)
037673,000287: 30,2606 45302 SR2 DSU # (-DRDOT/L-D12 B)=A*2(-9) (4)
037674,000288: 30,2607 77626 STADR
037675,000289: 30,2610 61426 STODL PCONS
037676,000290: 30,2611 02357 YRATE # D*2(8)
037677,000291:
![]() |
Page 850 |
037679,000293: 30,2612 65205 DMP PDDL # D12 D,EXCH WITH -L IN PDL(0) (2,2)
037680,000294: 30,2613 60465 BDDV SR2 # -DYDOT/L*2(-9)
037681,000295: 30,2614 02345 DYDOT
037682,000296: 30,2615 77625 DSU # (-DYDOT/L-D12 D)=C*2(-9)
037683,000297: 30,2616 00001 00D
037684,000298: 30,2617 02353 STORE YCONS
037685,000299: 30,2620 77624 CMPONENT CALL
037686,000300: 30,2621 61011 ASCRSTRT
037687,000301: 30,2622 71201 SETPD DLOAD
037688,000302: 30,2623 00001 00D
037689,000303: 30,2624 27201 100CS
037690,000304: 30,2625 77605 DMP
037691,000305: 30,2626 02355 PRATE # B(T-T0)*2(-9)
037692,000306: 30,2627 56215 DAD DDV # (A+B(T-T0))*2(-9)
037693,000307: 30,2630 02351 PCONS # (A+B(T-T0))/TBUP*2(8)
037694,000308: 30,2631 02265 TBUP
037695,000309: 30,2632 45352 SL1 DSU
037696,000310: 30,2633 02321 GEFF # ATR*2(9)
037697,000311: 30,2634 16363 STODL ATR
037698,000312: 30,2635 27201 100CS
037699,000313: 30,2636 43205 DMP DAD
037700,000314: 30,2637 02357 YRATE
037701,000315: 30,2640 02353 YCONS # (C+D(T-T0))*2(-9)
037702,000316: 30,2641 72471 DDV SL1
037703,000317: 30,2642 02265 TBUP
037704,000318: 30,2643 02361 STORE ATY # ATY*2(9)
037705,000319: 30,2644 65361 VXSC PDDL # ATY UY*2(8) (6)
037706,000320: 30,2645 02277 LAXIS
037707,000321: 30,2646 02363 ATR
037708,000322: 30,2647 53361 VXSC VAD # (0)
037709,000323: 30,2650 03535 UNIT/R/
037710,000324: 30,2651 41572 VSL1 PUSH # AH*2(9) IN PDL(0) (6)
037711,000325: 30,2652 65246 ABVAL PDDL # AH(2) IN PDL(34)
037712,000326: 30,2653 02257 AT # AHMAG IN PDL(6) (8)
037713,000327: 30,2654 45316 DSQ DSU # (AT(2)-AH(2))*2(18)
037714,000328: 30,2655 00043 34D # =ATP2*2(18)
037715,000329: 30,2656 41525 PDDL PUSH # (12)
037716,000330: 30,2657 02257 AT
037717,000331: 30,2660 45316 DSQ DSU # (AT(2)KR(2)-AH(2))*2(18) (10)
037718,000332: 30,2661 00043 34D # =ATP3*2(18)
037719,000333: 30,2662 71240 BMN DLOAD # IF ATP3 NEG,GO TO NO-ATP
037720,000334: 30,2663 60667 NO-ATP # LOAD ATP2, IF ATP3 POS
037721,000335: 30,2664 00011 8D
037722,000336: 30,2665 52166 SQRT GOTO # ATP*2(9)
037723,000337: 30,2666 60675 AIMER
037724,000338: 30,2667 55345 NO-ATP DLOAD BDDV # KR AT/AH = KH (8)
037725,000339: 30,2670 00007 6D
037726,000340: 30,2671 77761 VXSC # KH AH*2(9)
037727,000341: 30,2672 00001 00D
037728,000342: 30,2673 14001 STODL 00D # STORE NEW AH IN PDL(0)
037729,000343:
![]() |
Page 851 |
037731,000345: 30,2674 06424 HI6ZEROS
037732,000346: 30,2675 77765 AIMER SIGN
037733,000347: 30,2676 02347 DZDOT
037734,000348: 30,2677 02365 STORE ATP
037735,000349: 30,2700 77761 VXSC
037736,000350: 30,2701 02305 ZAXIS1 # ATP ZAXIS *2(8).
037737,000351: 30,2702 53372 VSL1 VAD # AT*2(9)
037738,000352: 30,2703 00001 00D
037739,000353: 30,2704 03252 STORE UNFC/2 # WILL BE OVERWRITTEN IF IN VERT. RISE.
037740,000354: 30,2705 43001 SETPD BON
037741,000355: 30,2706 00001 00D
037742,000356: 30,2707 04704 FLPI
037743,000357: 30,2710 60150 P12RET
037744,000358: 30,2711 77624 CALL
037745,000359: 30,2712 61011 ASCRSTRT
037746,000360: 30,2713 77614 BON
037747,000361: 30,2714 04701 FLVR
037748,000362: 30,2715 60774 CHECKALT
037749,000363: 30,2716 57575 MAINLINE VLOAD VCOMP
037750,000364: 30,2717 03535 UNIT/R/
037751,000365: 30,2720 17260 STODL UNWC/2
037752,000366: 30,2721 03654 TXO
037753,000367: 30,2722 51025 DSU BPL
037754,000368: 30,2723 01235 PIPTIME
037755,000369: 30,2724 60730 ASCTERM
037756,000370: 30,2725 43014 CLRXFLAG CLEAR CLEAR
037757,000371: 30,2726 01664 NOR29FLG # START R29 IN ASCENT PHASE.
037758,000372: 30,2727 06666 XOVINFLG # ALLOW X-AXIS OVERRIDE
037759,000373: 30,2730 77776 ASCTERM EXIT
037760,000374: 30,2731 00006 EXTEND
037761,000375: 30,2732 34755 DCA NEG0
037762,000376: 30,2733 52757 DXCH -PHASE3
037763,000377: 30,2734 30105 CA FLAGWRD9
037764,000378: 30,2735 74742 MASK FLRCSBIT
037765,000379: 30,2736 10000 CCS A
037766,000380: 30,2737 12766 TCF ASCTERM3
037767,000381: 30,2740 06036 TC INTPRET
037768,000382: 30,2741 77624 CALL
037769,000383: 30,2742 61062 FINDCDUW -2
037770,000384: 30,2743 77776 ASCTERM1 EXIT
037771,000385: 30,2744 00006 +1 EXTEND
037772,000386: 30,2745 34755 DCA NEG0
037773,000387: 30,2746 52757 DXCH -PHASE3
037774,000388: 30,2747 30105 ABRTDISP CA FLAGWRD9 # INSURE THAT THE NOUN 63 DISPLAY IS
037775,000389: 30,2750 74742 MASK FLRCSBIT # BYPASSED IF WE ARE IN THE RCS TRIMMING
037776,000390: 30,2751 10000 CCS A # MODE OF OPERATION
037777,000391: 30,2752 12766 TCF ASCTERM3
037778,000392: 30,2753 30104 CA FLAGWRD8 # BYPASS DISPLAYS IF ENGINE FAILURE IS
037779,000393: 30,2754 74742 MASK FLUNDBIT # INDICATED.
037780,000394: 30,2755 10000 CCS A
037781,000395:
![]() |
Page 852 |
037783,000397: 30,2756 12766 TCF ASCTERM3
037784,000398: 30,2757 33042 CAF V06N63*
037785,000399: 30,2760 04616 TC BANKCALL
037786,000400: 30,2761 20327 CADR GODSPR
037787,000401: 30,2762 12766 TCF ASCTERM3
037788,000402: 30,2763 77776 ASCTERM2 EXIT
037789,000403: 30,2764 05353 TC PHASCHNG
037790,000404: 30,2765 00003 OCT 00003
037791,000405: 30,2766 15155 ASCTERM3 TCF ENDOFJOB
037792,000406: 30,2767 77776 ASCTERM4 EXIT
037793,000407: 30,2770 00004 INHINT
037794,000408: 30,2771 04674 TC IBNKCALL # NO GUIDANCE THIS CYCLE -- HENCE ZERO
037795,000409: 30,2772 40153 CADR ZATTEROR # THE DAP ATTITUDE ERRORS.
037796,000410: 30,2773 12744 TCF ASCTERM1 +1
037797,000411:
037798,000412: 30,2774 45345 CHECKALT DLOAD DSU
037799,000413: 30,2775 02275 /R/MAG
037800,000414: 30,2776 02337 /LAND/
037801,000415: 30,2777 50025 DSU BMN # IF H LT 25K CHECK Z AXIS ORIENTATION.
037802,000416: 30,3000 26732 25KFT
037803,000417: 30,3001 57162 CHECKYAW
037804,000418: 30,3002 43345 EXITVR DLOAD DAD
037805,000419: 30,3003 01235 PIPTIME
037806,000420: 30,3004 25574 10SECS
037807,000421: 30,3005 03654 STORE TXO
037808,000422: 30,3006 77614 CLRGO
037809,000423: 30,3007 04621 FLVR
037810,000424: 30,3010 60716 MAINLINE
037811,000425:
037812,000426: 30,3011 77420 ASCRSTRT STQ EXIT
037813,000427: 30,3012 01164 TEMPR60
037814,000428: 30,3013 34741 CA FLPIBIT
037815,000429: 30,3014 64746 AD FLZONBIT
037816,000430: 30,3015 70105 MASK FLAGWRD9
037817,000431: 30,3016 10000 CCS A
037818,000432: 30,3017 13022 TCF +3
037819,000433: 30,3020 05353 TC PHASCHNG
037820,000434: 30,3021 04023 OCT 04023
037821,000435: 30,3022 06036 +3 TC INTPRET
037822,000436: 30,3023 77650 GOTO
037823,000437: 30,3024 01164 TEMPR60
037824,000438:
037825,000439: 27,3162 BANK 27
037826,000440: 27,2000 SETLOC ASENT1
037827,000441: 27,2000 BANK
037828,000442:
037829,000443: 27,3162 27,3162 SETXFLAG = CHECKYAW
037830,000444:
037831,000445: 27,3162 77614 CHECKYAW SET
037832,000446: 27,3163 06466 XOVINFLG # PROHIBIT X-AXIS OVERRIDE
037833,000447:
![]() |
Page 853 |
037835,000449: 27,3164 74345 DLOAD VXSC
037836,000450: 27,3165 02361 ATY
037837,000451: 27,3166 02277 LAXIS
037838,000452: 27,3167 74325 PDDL VXSC
037839,000453: 27,3170 02365 ATP
037840,000454: 27,3171 02305 ZAXIS1
037841,000455: 27,3172 53455 VAD UNIT
037842,000456: 27,3173 50206 PUSH DOT
037843,000457: 27,3174 02154 YNBPIP
037844,000458: 27,3175 45246 ABS DSU
037845,000459: 27,3176 21052 SIN5DEG
037846,000460: 27,3177 71244 BPL DLOAD
037847,000461: 27,3200 57205 KEEPVR
037848,000462: 27,3201 02313 RDOT
037849,000463: 27,3202 51025 DSU BPL
037850,000464: 27,3203 21034 40FPS
037851,000465: 27,3204 61002 EXITVR
037852,000466:
037853,000467: 27,3205 45575 KEEPVR VLOAD STADR # RECALL LOSVEC FROM PUSHLIST
037854,000468: 27,3206 50517 STOVL UNWC/2
037855,000469: 27,3207 03535 UNIT/R/
037856,000470: 27,3210 37252 STCALL UNFC/2
037857,000471: 27,3211 60730 ASCTERM
037858,000472:
037859,000473: 27,3212 77634 ENGOFF RTB
037860,000474: 27,3213 21462 LOADTIME
037861,000475: 27,3214 43225 DSU DAD
037862,000476: 27,3215 01235 PIPTIME
037863,000477: 27,3216 03452 TTOGO
037864,000478: 27,3217 77476 DCOMP EXIT
037865,000479: 27,3220 07256 TC TPAGREE # FORCE SIGN AGREEMENT ON MPAC, MPAC +1.
037866,000480: 27,3221 35016 CAF EBANK7
037867,000481: 27,3222 54003 TS EBANK
037868,000482: 27,3223 E7,1514 EBANK= TGO
037869,000483: 27,3223 00004 BIT3H INHINT # USED AS A CONSTANT
037870,000484: 27,3224 10155 CCS MPAC +1
037871,000485: 27,3225 13230 TCF +3 # C(A) = DT - 1 BIT
037872,000486: 27,3226 13230 TCF +2 # C(A) = 0
037873,000487: 27,3227 34755 CAF ZERO # C(A) = 0
037874,000488: 27,3230 64753 AD BIT1 # C(A) = 1 BIT OR DT.
037875,000489: 27,3231 55644 TS ENGOFFDT
037876,000490: 27,3232 05173 TC TWIDDLE
037877,000491: 27,3233 03245 ADRES ENGOFF1
037878,000492: 27,3234 05353 TC PHASCHNG
037879,000493: 27,3235 47014 OCT 47014
037880,000494: 27,3236 76133 -GENADR ENGOFFDT
037881,000495: 27,3237 E7,1514 EBANK= TGO
037882,000496: 27,3237 03245 56067 2CADR ENGOFF1
037883,000497:
![]() |
Page 854 |
037885,000499: 27,3241 06036 TC INTPRET
037886,000500: 27,3242 52014 SET GOTO
037887,000501: 27,3243 03470 IDLEFLAG # DISABLE DELTA-V MONITOR
037888,000502: 27,3244 60457 T2TEST
037889,000503:
037890,000504: 27,3245 04674 ENGOFF1 TC IBNKCALL # SHUT OFF THE ENGINE.
037891,000505: 27,3246 75551 CADR ENGINOF2
037892,000506:
037893,000507: 27,3247 35027 CAF PRIO17 # SET UP A JOB FOR THE ASCENT GUIDANCE
037894,000508: 27,3250 05105 TC FINDVAC # POSTBURN LOGIC.
037895,000509: 27,3251 E7,1453 EBANK= WHICH
037896,000510: 27,3251 03261 56067 2CADR CUTOFF
037897,000511: 27,3253 05353 TC PHASCHNG
037898,000512: 27,3254 07024 OCT 07024
037899,000513: 27,3255 17000 OCT 17000
037900,000514: 27,3256 E7,1514 EBANK= TGO
037901,000515: 27,3256 03261 56067 2CADR CUTOFF
037902,000516: 27,3260 15261 TCF TASKOVER
037903,000517:
037904,000518: 27,3261 05504 CUTOFF TC UPFLAG # SET FLRCS FLAG.
037905,000519: 27,3262 00214 ADRES FLRCS
037906,000520:
037907,000521: 27,3263 33330 -5 CAF V16N63
037908,000522: 27,3264 04616 TC BANKCALL
037909,000523: 27,3265 20351 CADR GOFLASH
037910,000524: 27,3266 13306 TCF TERMASC
037911,000525: 27,3267 13271 TCF CUTOFF1
037912,000526: 27,3270 13263 TCF -5
037913,000527:
037914,000528: 27,3271 00004 CUTOFF1 INHINT
037915,000529: 27,3272 04674 TC IBNKCALL # ZERO ATTITUDE ERRORS BEFORE REDUCING DB.
037916,000530: 27,3273 40153 CADR ZATTEROR
037917,000531: 27,3274 04674 TC IBNKCALL
037918,000532: 27,3275 40140 CADR SETMINDB
037919,000533: 27,3276 05353 TC PHASCHNG
037920,000534: 27,3277 04024 OCT 04024
037921,000535:
037922,000536: 27,3300 33331 -5 CAF V16N85C
037923,000537: 27,3301 04616 TC BANKCALL
037924,000538: 27,3302 20351 CADR GOFLASH
037925,000539: 27,3303 13306 TCF TERMASC
037926,000540: 27,3304 13306 TCF +2 # PROCEED
037927,000541: 27,3305 13300 TCF -5
037928,000542:
037929,000543: 27,3306 05353 TERMASC TC PHASCHNG
037930,000544: 27,3307 04024 OCT 04024
037931,000545:
037932,000546: 27,3310 00004 INHINT # RESTORE DEADBAND DESIRED BY ASTRONAUT.
037933,000547:
![]() |
Page 855 |
037935,000549: 27,3311 04674 TC IBNKCALL
037936,000550: 27,3312 40123 CADR RESTORDB
037937,000551: 27,3313 05516 TC DOWNFLAG # DISALLOW ABORTS AT THIS TIME.
037938,000552: 27,3314 00215 ADRES LETABORT
037939,000553: 27,3315 16001 TCF GOTOPOOH
037940,000554:
037941,000555: 27,3316 50375 YCOMP VLOAD DOT
037942,000556: 27,3317 03535 UNIT/R/
037943,000557: 27,3320 03716 QAXIS
037944,000558: 27,3321 67552 SL1 ARCSIN
037945,000559: 27,3322 41205 DMP DMP
037946,000560: 27,3323 03627 RCO
037947,000561: 27,3324 15404 2PI/8
037948,000562: 27,3325 77652 SL3
037949,000563: 27,3326 02341 STORE Y
037950,000564: 27,3327 77616 RVQ
037951,000565:
037952,000566: 27,3330 04077 V16N63 VN 1663
037953,000567: 27,3331 04125 V16N85C VN 1685
037954,000568:
037955,000569: 30,3025 BANK 30
037956,000570: 30,2000 SETLOC ASENT
037957,000571: 30,2000 BANK
037958,000572:
![]() |
Page 856 |
037960,000574: # ASCENT GUIDANCE CONSTANTS
037961,000575:
037962,000576: 30,3025 33,3200 100CS EQUALS 2SEC(18)
037963,000577: 30,3025 30,3027 T2A EQUALS 2SEC(17)
037964,000578: 30,3025 00062 00000 4SEC(17) 2DEC 400 B-17
037965,000579: 30,3027 00031 00000 2SEC(17) 2DEC 200 B-17
037966,000580: 30,3031 00175 00000 T3 2DEC 1000 B-17
037967,000581: 30,3033 00017 23305 40FPS 2DEC .12192 B-7 # 40 FT/SEC EXPRESSED IN M/CS.
037968,000582: 30,3035 00045 20000 6SEC(18) 2DEC 600 B-18
037969,000583: 30,3037 00010 BIT4H OCT 10
037970,000584: 30,3040 14400 00000 2SEC(9) 2DEC 200 B-9
037971,000585: 30,3042 01477 V06N63* VN 0663
037972,000586: 30,3043 01514 V06N76 VN 0676
037973,000587: 30,3044 01441 V06N33A VN 0633
037974,000588:
037975,000589: 30,3045 20000 00000 KT1 2DEC 0.5000
037976,000590: 30,3047 75751 41775 PRLIMIT 2DEC -.0639 # (B/TBUP)MIN=-.1FT.SEC(-3)
037977,000591: 30,3051 00545 00171 SIN5DEG 2DEC .08716 B-2
037978,000592: 30,3053 00022 07212 MINABDV 2DEC .0356 B-5 # 10 PERCENT BIGGER THAN GRAVITY
037979,000593: 30,3055 E7,1566 1/DV0 = MASS1
037980,000594:
![]() |
Page 857 |
037982,000596: # THE LOGARITHM SUBROUTINE
037983,000597:
037984,000598: 24,3504 BANK 24
037985,000599: 32,2000 SETLOC FLOGSUB
037986,000600: 32,2000 BANK
037987,000601:
037988,000602: # INPUT ..... X IN MPAC
037989,000603: # OUTPUT ..... -LOG(X) IN MPAC
037990,000604:
037991,000605: 32,3613 44301 LOGSUB NORM BDSU
037992,000606: 32,3614 00163 MPAC +6
037993,000607: 32,3615 17743 NEARONE
037994,000608: 32,3616 77776 EXIT
037995,000609: 32,3617 07221 TC POLY
037996,000610: 32,3620 00006 DEC 6 B-14
037997,000611: 32,3621 00000 00002 2DEC .0000000060
037998,000612: 32,3623 76777 77175 2DEC -.0312514377
037999,000613: 32,3625 77400 75416 2DEC -.0155686771
038000,000614: 32,3627 77507 65515 2DEC -.0112502068
038001,000615: 32,3631 77741 63547 2DEC -.0018545108
038002,000616: 32,3633 77052 55373 2DEC -.0286607906
038003,000617: 32,3635 01167 30361 2DEC .0385598563
038004,000618: 32,3637 76520 75267 2DEC -.0419361902
038005,000619:
038006,000620: 32,3641 34755 CAF ZERO
038007,000621: 32,3642 54156 TS MPAC +2
038008,000622: 32,3643 00006 EXTEND
038009,000623: 32,3644 33660 DCA CLOG2/32
038010,000624: 32,3645 52155 DXCH MPAC
038011,000625: 32,3646 52132 DXCH BUF +1
038012,000626: 32,3647 30162 CA MPAC +6
038013,000627: 32,3650 07306 TC SHORTMP
038014,000628: 32,3651 52156 DXCH MPAC +1
038015,000629: 32,3652 52155 DXCH MPAC
038016,000630: 32,3653 52132 DXCH BUF +1
038017,000631: 32,3654 20155 DAS MPAC
038018,000632: 32,3655 06036 TC INTPRET
038019,000633: 32,3656 43476 DCOMP RVQ
038020,000634:
038021,000635: 32,3657 00542 34414 CLOG2/32 2DEC .0216608494
End of include-file ASCENT_GUIDANCE.agc. Parent file is MAIN.agc