Source Code
![]() |
These source-code files were from the printout at the MIT Museum, with many thanks
to Deborah Douglas, the Museum's Curator of Science and Technology, for releasing
it to us. The printout was digitally photographed by Paul Fjeld. A team of
volunteers transcribed the source code manually from these images or, where
appropriate, modified already-transcribed but similar source Luminary 131 (Apollo 13)
source code to agree with the images from the printout. Note that the page images
presented online are of reduced quality, and that higher-quality images
are available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 001 OF AGC PROGRAM LMY99 BY NASA 2021112-061 20'35 OCT. 28,1968Note that the date is the date of the printout, not the date of the program revision. |
036819,000002: ## Copyright: Public domain.
036820,000003: ## Filename: ASCENT_GUIDNCE.agc
036821,000004: ## Purpose: Part of the source code for Luminary 1A build 099.
036822,000005: ## It is part of the source code for the Lunar Module's (LM)
036823,000006: ## Apollo Guidance Computer (AGC), for Apollo 11.
036824,000007: ## Assembler: yaYUL
036825,000008: ## Contact: Hartmuth Gutsche <hgutsche@xplornet.com>.
036826,000009: ## Website: www.ibiblio.org/apollo.
036827,000010: ## Pages: 843-856
036828,000011: ## Mod history: 2009-05-23 HG Transcribed from page images.
036829,000012: ## 2009-06-05 RSB Fixed a couple of typos.
036830,000013: ## 2009-06-07 RSB Corrected a typo.
036831,000014: ## 2010-12-31 JL Fixed page number comment.
036832,000015: ## 2016-12-13 RSB GOTOP00H -> GOTOPOOH
036833,000016: ## 2016-12-17 RSB Proofed text comments with octopus/ProoferComments
036834,000017: ## and corrected the errors found.
036835,000018: ## 2017-03-14 RSB Comment-text fixes identified in 5-way
036836,000019: ## side-by-side diff of Luminary 69/99/116/131/210.
036837,000020:
036838,000021: ## This source code has been transcribed or otherwise adapted from
036839,000022: ## digitized images of a hardcopy from the MIT Museum. The digitization
036840,000023: ## was performed by Paul Fjeld, and arranged for by Deborah Douglas of
036841,000024: ## the Museum. Many thanks to both. The images (with suitable reduction
036842,000025: ## in storage size and consequent reduction in image quality as well) are
036843,000026: ## available online at www.ibiblio.org/apollo. If for some reason you
036844,000027: ## find that the images are illegible, contact me at info@sandroid.org
036845,000028: ## about getting access to the (much) higher-quality images which Paul
036846,000029: ## actually created.
036847,000030: ##
036848,000031: ## Notations on the hardcopy document read, in part:
036849,000032: ##
036850,000033: ## Assemble revision 001 of AGC program LMY99 by NASA 2021112-61
036851,000034: ## 16:27 JULY 14, 1969
036852,000035:
![]() |
Page 843 |
036854,000037: 34,3642 BANK 34
036855,000038: 34,2000 SETLOC ASCFILT
036856,000039: 34,2000 BANK
036857,000040:
036858,000041: 34,3642 E7,1515 EBANK= DVCNTR
036859,000042:
036860,000043: 34,3642 COUNT* $$/ASENT
036861,000044:
036862,000045: 34,3642 05353 ATMAG TC PHASCHNG
036863,000046: 34,3643 00035 OCT 00035
036864,000047: 34,3644 06037 TC INTPRET
036865,000048: 34,3645 77614 BON
036866,000049: 34,3646 04705 FLRCS
036867,000050: 34,3647 60321 ASCENT
036868,000051: 34,3650 45345 DLOAD DSU
036869,000052: 34,3651 03514 ABDVCONV
036870,000053: 34,3652 26205 MINABDV
036871,000054: 34,3653 43040 BMN CLEAR
036872,000055: 34,3654 60750 ASCTERM4
036873,000056: 34,3655 04267 SURFFLAG
036874,000057: 34,3656 67214 CLEAR SLOAD
036875,000058: 34,3657 02676 RENDWFLG
036876,000059: 34,3660 31716 BIT3H
036877,000060: 34,3661 77471 DDV EXIT
036878,000061: 34,3662 03514 ABDVCONV
036879,000062: 34,3663 52155 DXCH MPAC
036880,000063: 34,3664 53641 DXCH 1/DV3
036881,000064: 34,3665 53637 DXCH 1/DV2
036882,000065: 34,3666 53635 DXCH 1/DV1
036883,000066: 34,3667 53571 DXCH 1/DV0
036884,000067: 34,3670 06037 TC INTPRET
036885,000068: 34,3671 43345 DLOAD DAD
036886,000069: 34,3672 03571 1/DV0
036887,000070: 34,3673 03635 1/DV1
036888,000071: 34,3674 43215 DAD DAD
036889,000072: 34,3675 03637 1/DV2
036890,000073: 34,3676 03641 1/DV3
036891,000074: 34,3677 41205 DMP DMP
036892,000075: 34,3700 02265 VE
036893,000076: 34,3701 21032 2SEC(9)
036894,000077: 34,3702 65252 SL3 PDDL
036895,000078: 34,3703 02271 TBUP
036896,000079: 34,3704 43342 SR1 DAD
036897,000080: 34,3705 77625 DSU
036898,000081: 34,3706 21027 6SEC(18)
036899,000082: 34,3707 16271 STODL TBUP
036900,000083: 34,3710 02265 VE
036901,000084: 34,3711 56342 SR1 DDV
036902,000085: 34,3712 02271 TBUP
036903,000086: 34,3713 36263 STCALL AT
![]() |
Page 844 |
036905,000088: 34,3714 60321 ASCENT
036906,000089: 34,3715 00004 BIT3H OCT 4
036907,000090:
![]() |
Page 845 |
036909,000092: 30,2321 BANK 30
036910,000093: 30,2000 SETLOC ASENT
036911,000094: 30,2000 BANK
036912,000095: 30,2321 COUNT* $$/ASENT
036913,000096:
036914,000097: 30,2321 51575 ASCENT VLOAD ABVAL
036915,000098: 30,2322 03521 R
036916,000099: 30,2323 26301 STOVL /R/MAG
036917,000100: 30,2324 03726 ZAXIS1
036918,000101: 30,2325 72441 DOT SL1
036919,000102: 30,2326 03527 V # Z.V = ZDOT*2(-8).
036920,000103: 30,2327 26313 STOVL ZDOT # ZDOT*2(-7)
036921,000104: 30,2330 03726 ZAXIS1
036922,000105: 30,2331 76435 VXV VSL1
036923,000106: 30,2332 03537 UNIT/R/ # Z X UR = LAXIS*2(-2)
036924,000107: 30,2333 02303 STORE LAXIS # LAXIS*2(-1)
036925,000108: 30,2334 72441 DOT SL1
036926,000109: 30,2335 03527 V # L.V = YDOT*2(-8).
036927,000110: 30,2336 36311 STCALL YDOT # YDOT * 2(-7)
036928,000111: 30,2337 57312 YCOMP
036929,000112: 30,2340 77775 VLOAD
036930,000113: 30,2341 03563 GDT1/2 # LOAD GDT1/2*2(-7) M/CS.
036931,000114: 30,2342 50341 V/SC DOT
036932,000115: 30,2343 27147 2SEC(18)
036933,000116: 30,2344 03537 UNIT/R/ # G.UR*2(9) = GR*2(9).
036934,000117: 30,2345 47315 PDVL VXV # STORE IN PDL(0) (2)
036935,000118: 30,2346 03537 UNIT/R/ # LOAD UNIT/R/ *2(-1).
036936,000119: 30,2347 03527 V # UR*2(-1) X V*2(-7) = H/R*2(-8).
036937,000120: 30,2350 56236 VSQ DDV # H(2)/R(2)*2(-16).
036938,000121: 30,2351 02301 /R/MAG # H(2)/R(3)*2(9).
036939,000122: 30,2352 43352 SL1 DAD
036940,000123: 30,2353 77626 STADR
036941,000124: 30,2354 61462 STODL GEFF # GEFF*2(10)M/CS/CS.
036942,000125: 30,2355 02277 ZDOTD
036943,000126: 30,2356 77625 DSU
036944,000127: 30,2357 02313 ZDOT
036945,000128: 30,2360 02343 STORE DZDOT # DZDOT = (ZDOTD - ZDOT) * 2(7) M/CS.
036946,000129: 30,2361 65361 VXSC PDDL
036947,000130: 30,2362 03726 ZAXIS1
036948,000131: 30,2363 02275 YDOTD
036949,000132: 30,2364 77625 DSU
036950,000133: 30,2365 02311 YDOT
036951,000134: 30,2366 02341 STORE DYDOT # DYDOT = (YDOTD - YDOT) *2(7) M/CS.
036952,000135: 30,2367 65361 VXSC PDDL
036953,000136: 30,2370 02303 LAXIS
036954,000137: 30,2371 02273 RDOTD
![]() |
Page 846 |
036956,000139: 30,2372 77625 DSU
036957,000140: 30,2373 03474 RDOT
036958,000141: 30,2374 02337 STORE DRDOT # DRDOT = (RDOTD - RDOT) * 2(7) M/CS.
036959,000142: 30,2375 53361 VXSC VAD
036960,000143: 30,2376 03537 UNIT/R/
036961,000144: 30,2377 76455 VAD VSL1
036962,000145: 30,2400 77626 STADR
036963,000146: 30,2401 74131 STORE VGVECT # VG = (DRDOT)R + (DYDOT)L + (DZDOT)Z.
036964,000147: 30,2402 41345 DLOAD DMP # LOAD TGO
036965,000148: 30,2403 03517 TGO # TGO GEFF
036966,000149: 30,2404 02315 GEFF
036967,000150: 30,2405 76561 VXSC VSL1
036968,000151: 30,2406 03537 UNIT/R/ # TGO GEFF UR
036969,000152: 30,2407 77645 BVSU
036970,000153: 30,2410 03646 VGVECT # COMPENSATED FOR GEFF
036971,000154: 30,2411 03646 STORE VGVECT # STORE FOR DOWNLINK
036972,000155: 30,2412 76521 MXV VSL1 # GET VGBODY FOR N85 DISPLAY
036973,000156: 30,2413 02146 XNBPIP
036974,000157: 30,2414 27502 STOVL VGBODY
036975,000158: 30,2415 03646 VGVECT
036976,000159: 30,2416 43046 ABVAL BOFF # MAGNITUDE OF VGVECT
036977,000160: 30,2417 04745 FLRCS # IF FLRCS=0,DO NORMAL GUIDANCE
036978,000161: 30,2420 60425 MAINENG
036979,000162: 30,2421 77671 DDV # USE TGO=VG/AT WITH RCS
036980,000163: 30,2422 20001 AT/RCS
036981,000164: 30,2423 37517 STCALL TGO # THIS WILL BE USED ON NEXT CYCLE
036982,000165: 30,2424 60746 ASCTERM2
036983,000166: 30,2425 41471 MAINENG DDV PUSH # VG/VE IN PDL(0) (2)
036984,000167: 30,2426 02265 VE
036985,000168: 30,2427 44205 DMP BDSU # 1 - KT VG/VE
036986,000169: 30,2430 26201 KT1
036987,000170: 30,2431 17771 NEARONE
036988,000171: 30,2432 41205 DMP DMP # TBUP VG(1-KT VG/VE)/VE (0)
036989,000172: 30,2433 02271 TBUP # = TGO
036990,000173: 30,2434 77625 DSU # COMPENSATE FOR TAILOFF
036991,000174: 30,2435 02267 TTO
036992,000175: 30,2436 03517 STORE TGO
036993,000176: 30,2437 57461 SR DCOMP
036994,000177: 30,2440 20614 11D
036995,000178: 30,2441 17454 STODL TTOGO # TGO *2(-28) CS
036996,000179: 30,2442 03517 TGO
036997,000180: 30,2443 45214 BON DSU
036998,000181: 30,2444 03710 IDLEFLAG
036999,000182: 30,2445 60451 T2TEST
037000,000183: 30,2446 21021 4SEC(17) # ( TGO - 4 )*2(-17) CS.
037001,000184: 30,2447 77640 BMN
037002,000185: 30,2450 30355 ENGOFF
037003,000186: 30,2451 77745 T2TEST DLOAD
037004,000187: 30,2452 03517 TGO
037005,000188: 30,2453 50025 DSU BMN # IF TGO - T2 NEG., GO TO CMPONENT
![]() |
Page 847 |
037007,000190: 30,2454 21023 T2A
037008,000191: 30,2455 60612 CMPONENT
037009,000192: 30,2456 45345 DLOAD DSU
037010,000193: 30,2457 02271 TBUP
037011,000194: 30,2460 03517 TGO
037012,000195: 30,2461 45071 DDV CALL # 1- TGO/TBUP
037013,000196: 30,2462 02271 TBUP
037014,000197: 30,2463 61036 LOGSUB
037015,000198: 30,2464 41461 SL PUSH # -L IN PDL(0) (2)
037016,000199: 30,2465 20206 5
037017,000200: 30,2466 44265 BDDV BDSU # -TGO/L*2(-17)
037018,000201: 30,2467 03517 TGO
037019,000202: 30,2470 02271 TBUP # TBUP + TGO/L = D12*2(-17)
037020,000203: 30,2471 43006 PUSH BON # STORE IN PDL(2) (4)
037021,000204: 30,2472 04703 FLPC # IF FLPC = 1, GO TO CONST
037022,000205: 30,2473 60502 NORATES
037023,000206: 30,2474 45345 DLOAD DSU
037024,000207: 30,2475 03517 TGO
037025,000208: 30,2476 21025 T3
037026,000209: 30,2477 43044 BPL SET # FLPC=1
037027,000210: 30,2500 60510 RATES
037028,000211: 30,2501 04463 FLPC
037029,000212: 30,2502 77745 NORATES DLOAD
037030,000213: 30,2503 06522 HI6ZEROS
037031,000214: 30,2504 02351 STORE PRATE # B = 0
037032,000215: 30,2505 02353 STORE YRATE # D = 0
037033,000216: 30,2506 77650 GOTO
037034,000217: 30,2507 60572 CONST # GO TO CONST
037035,000218: 30,2510 45345 RATES DLOAD DSU
037036,000219: 30,2511 03517 TGO
037037,000220: 30,2512 00003 02D # TGO - D12 = D21*2(-17)
037038,000221: 30,2513 72406 PUSH SL1 # IN PDL(4) (6)
037039,000222: 30,2514 52421 BDSU SL3 # (1/2TGO - D21)*2(-13) = E * 2(-13)
037040,000223: 30,2515 03517 TGO # (8)
037041,000224: 30,2516 41325 PDDL DMP # IN PDL(6)
037042,000225: 30,2517 03517 TGO
037043,000226: 30,2520 03474 RDOT # RDOT TGO * 2(-24)
037044,000227: 30,2521 45215 DAD DSU # R + RDOT TGO
037045,000228: 30,2522 02301 /R/MAG # R + RDOT TGO - RCO
037046,000229: 30,2523 03631 RCO # MPAC = -DR *2(-24).
037047,000230: 30,2524 41325 PDDL DMP # -DR IN PDL(8) (10)
037048,000231: 30,2525 02337 DRDOT
037049,000232: 30,2526 00005 04D # D21 DRDOT*2(-24)
037050,000233: 30,2527 62415 DAD SL2 # (D21 DRDOT-DR)*2(-22) (8)
037051,000234: 30,2530 56271 DDV DDV
037052,000235: 30,2531 00007 06D # (D21 DRDOT-DR)/E*2(-9)
037053,000236: 30,2532 03517 TGO
037054,000237: 30,2533 02351 STORE PRATE # B * 2(8)
037055,000238: 30,2534 71240 BMN DLOAD # B>0 NOT PERMITTED
037056,000239: 30,2535 60541 CHKBMAG
![]() |
Page 848 |
037058,000241: 30,2536 06522 HI6ZEROS
037059,000242: 30,2537 36351 STCALL PRATE
037060,000243: 30,2540 60553 PROK
037061,000244: 30,2541 56202 CHKBMAG SR4 DDV # B*2(4)
037062,000245: 30,2542 02271 TBUP # (B / TAU) * 2(21)
037063,000246: 30,2543 51025 DSU BPL
037064,000247: 30,2544 26203 PRLIMIT # ( B / TAU ) * 2(21) MAX.
037065,000248: 30,2545 60553 PROK
037066,000249: 30,2546 41345 DLOAD DMP
037067,000250: 30,2547 26203 PRLIMIT
037068,000251: 30,2550 02271 TBUP # B MAX. * 2(4)
037069,000252: 30,2551 77612 SL4 # BMAX*2(8)
037070,000253: 30,2552 02351 STORE PRATE
037071,000254: 30,2553 77745 PROK DLOAD
037072,000255: 30,2554 03517 TGO
037073,000256: 30,2555 43205 DMP DAD # YDOT TGO
037074,000257: 30,2556 02311 YDOT
037075,000258: 30,2557 02335 Y # Y + YDOT TGO
037076,000259: 30,2560 65225 DSU PDDL # Y + YDOT TGO - YCO
037077,000260: 30,2561 03633 YCO # MPAC = - DY*2(-24.) IN PDL(8) (10)
037078,000261: 30,2562 02341 DYDOT
037079,000262: 30,2563 43205 DMP DAD # D21 DYDOT - DY (8)
037080,000263: 30,2564 00005 04D
037081,000264: 30,2565 56312 SL2 DDV # (D21 DYDOT - DY)/E*2(-9)
037082,000265: 30,2566 40271 DDV SETPD # (D21 DYDOT - DY)/E TGO*2(8)
037083,000266: 30,2567 03517 TGO # = D*2(8)
037084,000267: 30,2570 00005 04
037085,000268: 30,2571 02353 STORE YRATE
037086,000269: 30,2572 41345 CONST DLOAD DMP # LOAD B*2(8)
037087,000270: 30,2573 02351 PRATE # B D12*2(-9)
037088,000271: 30,2574 00003 02D
037089,000272: 30,2575 56325 PDDL DDV # D12 B IN PDL(4) (6)
037090,000273: 30,2576 02337 DRDOT # LOAD DRDOT*2(-7)
037091,000274: 30,2577 00001 00D # -DRDOT/L*2(-7)
037092,000275: 30,2600 45302 SR2 DSU # (-DRDOT/L-D12 B)=A*2(-9) (4)
037093,000276: 30,2601 77626 STADR
037094,000277: 30,2602 61432 STODL PCONS
037095,000278: 30,2603 02353 YRATE # D*2(8)
037096,000279: 30,2604 65205 DMP PDDL # D12 D,EXCH WITH -L IN PDL(0) (2,2)
037097,000280: 30,2605 60465 BDDV SR2 # -DYDOT/L*2(-9)
037098,000281: 30,2606 02341 DYDOT
037099,000282: 30,2607 77625 DSU # (-DYDOT/L-D12 D)=C*2(-9)
037100,000283: 30,2610 00001 00D
037101,000284: 30,2611 02347 STORE YCONS
037102,000285: 30,2612 71201 CMPONENT SETPD DLOAD
037103,000286: 30,2613 00001 00D
037104,000287: 30,2614 27147 100CS
037105,000288: 30,2615 77605 DMP
037106,000289: 30,2616 02351 PRATE # B(T-T0)*2(-9)
037107,000290: 30,2617 56215 DAD DDV # (A+B(T-T0))*2(-9)
![]() |
Page 849 |
037109,000292: 30,2620 02345 PCONS # (A+B(T-T0))/TBUP*2(8)
037110,000293: 30,2621 02271 TBUP
037111,000294: 30,2622 45352 SL1 DSU
037112,000295: 30,2623 02315 GEFF # ATR*2(9)
037113,000296: 30,2624 16357 STODL ATR
037114,000297: 30,2625 27147 100CS
037115,000298: 30,2626 43205 DMP DAD
037116,000299: 30,2627 02353 YRATE
037117,000300: 30,2630 02347 YCONS # (C+D(T-T0))*2(-9)
037118,000301: 30,2631 72471 DDV SL1
037119,000302: 30,2632 02271 TBUP
037120,000303: 30,2633 02355 STORE ATY # ATY*2(9)
037121,000304: 30,2634 65361 VXSC PDDL # ATY UY*2(8) (6)
037122,000305: 30,2635 02303 LAXIS
037123,000306: 30,2636 02357 ATR
037124,000307: 30,2637 53361 VXSC VAD # (0)
037125,000308: 30,2640 03537 UNIT/R/
037126,000309: 30,2641 41572 VSL1 PUSH # AH*2(9) IN PDL(0) (6)
037127,000310: 30,2642 65246 ABVAL PDDL # AH(2) IN PDL(34)
037128,000311: 30,2643 02263 AT # AHMAG IN PDL(6) (8)
037129,000312: 30,2644 45316 DSQ DSU # (AT(2)-AH(2))*2(18)
037130,000313: 30,2645 00043 34D # =ATP2*2(18)
037131,000314: 30,2646 41525 PDDL PUSH # (12)
037132,000315: 30,2647 02263 AT
037133,000316: 30,2650 45316 DSQ DSU # (AT(2)KR(2)-AH(2))*2(18) (10)
037134,000317: 30,2651 00043 34D # =ATP3*2(18)
037135,000318: 30,2652 71240 BMN DLOAD # IF ATP3 NEG,GO TO NO-ATP
037136,000319: 30,2653 60657 NO-ATP # LOAD ATP2, IF ATP3 POS
037137,000320: 30,2654 00011 8D
037138,000321: 30,2655 52166 SQRT GOTO # ATP*2(9)
037139,000322: 30,2656 60665 AIMER
037140,000323: 30,2657 55345 NO-ATP DLOAD BDDV # KR AT/AH = KH (8)
037141,000324: 30,2660 00007 6D
037142,000325: 30,2661 77761 VXSC # KH AH*2(9)
037143,000326: 30,2662 00001 00D
037144,000327: 30,2663 14001 STODL 00D # STORE NEW AH IN PDL(0)
037145,000328: 30,2664 06522 HI6ZEROS
037146,000329: 30,2665 77765 AIMER SIGN
037147,000330: 30,2666 02343 DZDOT
037148,000331: 30,2667 02361 STORE ATP
037149,000332: 30,2670 77761 VXSC
037150,000333: 30,2671 03726 ZAXIS1 # ATP ZAXIS *2(8).
037151,000334: 30,2672 53372 VSL1 VAD # AT*2(9)
037152,000335: 30,2673 00001 00D
037153,000336: 30,2674 03254 STORE UNFC/2 # WILL BE OVERWRITTEN IF IN VERT. RISE.
037154,000337: 30,2675 43001 SETPD BON
037155,000338: 30,2676 00001 00D
037156,000339: 30,2677 04704 FLPI
037157,000340: 30,2700 60220 P12RET
037158,000341: 30,2701 77614 BON
![]() |
Page 850 |
037160,000343: 30,2702 04701 FLVR
037161,000344: 30,2703 60755 CHECKALT
037162,000345: 30,2704 57575 MAINLINE VLOAD VCOMP
037163,000346: 30,2705 03537 UNIT/R/
037164,000347: 30,2706 17262 STODL UNWC/2
037165,000348: 30,2707 03654 TXO
037166,000349: 30,2710 51025 DSU BPL
037167,000350: 30,2711 01235 PIPTIME
037168,000351: 30,2712 60721 ASCTERM
037169,000352: 30,2713 77614 BON
037170,000353: 30,2714 04711 ROTFLAG
037171,000354: 30,2715 57273 ANG1CHEK
037172,000355: 30,2716 43014 CLRXFLAG CLEAR CLEAR
037173,000356: 30,2717 01664 NOR29FLG # START R29 IN ASCENT PHASE.
037174,000357: 30,2720 06666 XOVINFLG # ALLOW X-AXIS OVERRIDE
037175,000358: 30,2721 77776 ASCTERM EXIT
037176,000359: 30,2722 30105 CA FLAGWRD9
037177,000360: 30,2723 74742 MASK FLRCSBIT
037178,000361: 30,2724 10000 CCS A
037179,000362: 30,2725 12747 TCF ASCTERM3
037180,000363: 30,2726 06037 TC INTPRET
037181,000364: 30,2727 77624 CALL
037182,000365: 30,2730 61111 FINDCDUW -2
037183,000366: 30,2731 77776 ASCTERM1 EXIT
037184,000367: 30,2732 30105 +1 CA FLAGWRD9 # INSURE THAT THE NOUN 63 DISPLAY IS
037185,000368: 30,2733 74742 MASK FLRCSBIT # BYPASSED IF WE ARE IN THE RCS TRIMMING
037186,000369: 30,2734 10000 CCS A # MODE OF OPERATION
037187,000370: 30,2735 12747 TCF ASCTERM3
037188,000371: 30,2736 30104 CA FLAGWRD8 # BYPASS DISPLAYS IF ENGINE FAILURE IS
037189,000372: 30,2737 74742 MASK FLUNDBIT # INDICATED.
037190,000373: 30,2740 10000 CCS A
037191,000374: 30,2741 12747 TCF ASCTERM3
037192,000375: 30,2742 33033 CAF V06N63*
037193,000376: 30,2743 04616 TC BANKCALL
037194,000377: 30,2744 20451 CADR GODSPR
037195,000378: 30,2745 12747 TCF ASCTERM3
037196,000379: 30,2746 77776 ASCTERM2 EXIT
037197,000380: 30,2747 15155 ASCTERM3 TCF ENDOFJOB
037198,000381: 30,2750 77776 ASCTERM4 EXIT
037199,000382: 30,2751 00004 INHINT
037200,000383: 30,2752 04674 TC IBNKCALL # NO GUIDANCE THIS CYCLE -- HENCE ZERO
037201,000384: 30,2753 40153 CADR ZATTEROR # THE DAP ATTITUDE ERRORS.
037202,000385: 30,2754 12732 TCF ASCTERM1 +1
037203,000386:
037204,000387: 30,2755 45345 CHECKALT DLOAD DSU
037205,000388: 30,2756 02301 /R/MAG
037206,000389: 30,2757 02333 /LAND/
037207,000390: 30,2760 50025 DSU BMN # IF H LT 25K CHECK Z AXIS ORIENTATION.
037208,000391: 30,2761 26700 25KFT
037209,000392: 30,2762 16667 CHECKYAW
![]() |
Page 851 |
037211,000394: 30,2763 43014 EXITVR CLEAR BON
037212,000395: 30,2764 04661 FLVR
037213,000396: 30,2765 04711 ROTFLAG
037214,000397: 30,2766 60704 MAINLINE
037215,000398: 30,2767 43345 DLOAD DAD
037216,000399: 30,2770 01235 PIPTIME
037217,000400: 30,2771 25755 10SECS
037218,000401: 30,2772 37654 STCALL TXO
037219,000402: 30,2773 60704 MAINLINE
037220,000403: 30,2774 77614 EXITVR1 CLRGO
037221,000404: 30,2775 04631 ROTFLAG
037222,000405: 30,2776 60763 EXITVR
037223,000406:
037224,000407: 27,2000 SETLOC ASENT1
037225,000408: 27,2000 BANK
037226,000409: 27,3273 COUNT* $$/ASENT
037227,000410:
037228,000411: 27,3273 50375 ANG1CHEK VLOAD DOT
037229,000412: 27,3274 03254 UNFC/2
037230,000413: 27,3275 02146 XNBPIP
037231,000414: 27,3276 51025 DSU BPL
037232,000415: 27,3277 02577 COSTHET1
037233,000416: 27,3300 57307 OFFROT
037234,000417: 27,3301 50375 VLOAD DOT
037235,000418: 27,3302 02146 XNBPIP
037236,000419: 27,3303 03537 UNIT/R/
037237,000420: 27,3304 50025 DSU BMN
037238,000421: 27,3305 02601 COSTHET2
037239,000422: 27,3306 30351 KEEPVR1
037240,000423: 27,3307 77614 OFFROT CLRGO
037241,000424: 27,3310 04631 ROTFLAG
037242,000425: 27,3311 60716 CLRXFLAG
037243,000426:
037244,000427: 07,2667 BANK 7
037245,000428: 07,2000 SETLOC ASENT2
037246,000429: 07,2000 BANK
037247,000430: 07,2667 COUNT* $$/ASENT
037248,000431:
037249,000432: 07,2667 07,2667 SETXFLAG = CHECKYAW
037250,000433:
037251,000434: 07,2667 77614 CHECKYAW SET
037252,000435: 07,2670 06466 XOVINFLG # PROHIBIT X-AXIS OVERRIDE
037253,000436: 07,2671 74345 DLOAD VXSC
037254,000437: 07,2672 02355 ATY
037255,000438: 07,2673 02303 LAXIS
037256,000439: 07,2674 74325 PDDL VXSC
037257,000440: 07,2675 02361 ATP
037258,000441: 07,2676 03726 ZAXIS1
037259,000442: 07,2677 53455 VAD UNIT
037260,000443: 07,2700 50206 PUSH DOT
![]() |
Page 852 |
037262,000445: 07,2701 02154 YNBPIP
037263,000446: 07,2702 45246 ABS DSU
037264,000447: 07,2703 13503 SIN5DEG
037265,000448: 07,2704 71244 BPL DLOAD
037266,000449: 07,2705 30347 KEEPVR
037267,000450: 07,2706 03474 RDOT
037268,000451: 07,2707 51025 DSU BPL
037269,000452: 07,2710 13505 40FPS
037270,000453: 07,2711 60774 EXITVR1
037271,000454: 07,2712 77650 GOTO
037272,000455: 07,2713 30347 KEEPVR
037273,000456:
037274,000457: 05,3502 BANK 5
037275,000458: 05,2000 SETLOC ASENT3
037276,000459: 05,2000 BANK
037277,000460: 05,3502 COUNT* $$/ASENT
037278,000461:
037279,000462: 05,3502 00545 00171 SIN5DEG 2DEC 0.08716 B-2
037280,000463: 05,3504 00017 23305 40FPS 2DEC 0.12192 B-7
037281,000464:
037282,000465: 14,2347 BANK 14
037283,000466: 14,2000 SETLOC ASENT4
037284,000467: 14,2000 BANK
037285,000468: 14,2347 COUNT* $$/ASENT
037286,000469:
037287,000470: 14,2347 45575 KEEPVR VLOAD STADR # RECALL LOSVEC FROM PUSHLIST
037288,000471: 14,2350 74515 STORE UNWC/2
037289,000472: 14,2351 77775 KEEPVR1 VLOAD
037290,000473: 14,2352 03537 UNIT/R/
037291,000474: 14,2353 37254 STCALL UNFC/2
037292,000475: 14,2354 60721 ASCTERM
037293,000476:
037294,000477: 14,2355 77634 ENGOFF RTB
037295,000478: 14,2356 21573 LOADTIME
037296,000479: 14,2357 43225 DSU DAD
037297,000480: 14,2360 01235 PIPTIME
037298,000481: 14,2361 03454 TTOGO
037299,000482: 14,2362 77476 DCOMP EXIT
037300,000483: 14,2363 07257 TC TPAGREE # FORCE SIGN AGREEMENT ON MPAC, MPAC +1.
037301,000484: 14,2364 35016 CAF EBANK7
037302,000485: 14,2365 54003 TS EBANK
037303,000486: 14,2366 E7,1516 EBANK= TGO
037304,000487: 14,2366 00004 INHINT
037305,000488: 14,2367 10155 CCS MPAC +1
037306,000489: 14,2370 12373 TCF +3 # C(A) = DT - 1 BIT
037307,000490: 14,2371 12373 TCF +2 # C(A) = 0
037308,000491: 14,2372 34755 CAF ZERO # C(A) = 0
037309,000492: 14,2373 64753 AD BIT1 # C(A) = 1 BIT OR DT.
![]() |
Page 853 |
037311,000494: 14,2374 55644 TS ENGOFFDT
037312,000495: 14,2375 05173 TC TWIDDLE
037313,000496: 14,2376 02410 ADRES ENGOFF1
037314,000497: 14,2377 05353 TC PHASCHNG
037315,000498: 14,2400 47014 OCT 47014
037316,000499: 14,2401 76133 -GENADR ENGOFFDT
037317,000500: 14,2402 E7,1516 EBANK= TGO
037318,000501: 14,2402 02410 30067 2CADR ENGOFF1
037319,000502:
037320,000503: 14,2404 06037 TC INTPRET
037321,000504: 14,2405 52014 SET GOTO
037322,000505: 14,2406 03470 IDLEFLAG # DISABLE DELTA-V MONITOR
037323,000506: 14,2407 60451 T2TEST
037324,000507:
037325,000508: 14,2410 04674 ENGOFF1 TC IBNKCALL # SHUT OFF THE ENGINE.
037326,000509: 14,2411 75551 CADR ENGINOF2
037327,000510:
037328,000511: 14,2412 35027 CAF PRIO17 # SET UP A JOB FOR THE ASCENT GUIDANCE
037329,000512: 14,2413 05105 TC FINDVAC # POSTBURN LOGIC.
037330,000513: 14,2414 E7,1455 EBANK= WHICH
037331,000514: 14,2414 02424 30067 2CADR CUTOFF
037332,000515:
037333,000516: 14,2416 05353 TC PHASCHNG
037334,000517: 14,2417 07024 OCT 07024
037335,000518: 14,2420 17000 OCT 17000
037336,000519: 14,2421 E7,1516 EBANK= TGO
037337,000520: 14,2421 02424 30067 2CADR CUTOFF
037338,000521:
037339,000522: 14,2423 15261 TCF TASKOVER
037340,000523:
037341,000524: 14,2424 05504 CUTOFF TC UPFLAG # SET FLRCS FLAG.
037342,000525: 14,2425 00214 ADRES FLRCS
037343,000526:
037344,000527: 14,2426 32445 -5 CAF V16N63
037345,000528: 14,2427 04616 TC BANKCALL
037346,000529: 14,2430 20476 CADR GOFLASH
037347,000530: 14,2431 12434 TCF +3
037348,000531: 14,2432 12436 TCF CUTOFF1
037349,000532: 14,2433 12426 TCF -5
037350,000533:
037351,000534: 14,2434 04635 +3 TC POSTJUMP
037352,000535: 14,2435 61007 CADR TERMASC
037353,000536:
037354,000537: 14,2436 00004 CUTOFF1 INHINT
037355,000538: 14,2437 04674 TC IBNKCALL # ZERO ATTITUDE ERRORS BEFORE REDUCING DB.
037356,000539: 14,2440 40153 CADR ZATTEROR
037357,000540: 14,2441 04674 TC IBNKCALL
037358,000541: 14,2442 40140 CADR SETMINDB
037359,000542: 14,2443 04635 TC POSTJUMP
037360,000543: 14,2444 60777 CADR CUTOFF2
![]() |
Page 854 |
037362,000545:
037363,000546: 14,2445 04077 V16N63 VN 1663
037364,000547: 30,2777 BANK 30
037365,000548: 30,2000 SETLOC ASENT5
037366,000549: 30,2000 BANK
037367,000550: 30,2777 COUNT* $$/ASENT
037368,000551:
037369,000552: 30,2777 05353 CUTOFF2 TC PHASCHNG
037370,000553: 30,3000 04024 OCT 04024
037371,000554:
037372,000555: 30,3001 33017 CAF V16N85C
037373,000556: 30,3002 04616 TC BANKCALL
037374,000557: 30,3003 20476 CADR GOFLASH
037375,000558: 30,3004 13007 TCF TERMASC
037376,000559: 30,3005 13007 TCF +2 # PROCEED
037377,000560: 30,3006 12777 TCF CUTOFF2
037378,000561:
037379,000562: 30,3007 05353 TERMASC TC PHASCHNG
037380,000563: 30,3010 04024 OCT 04024
037381,000564:
037382,000565: 30,3011 00004 INHINT # RESTORE DEADBAND DESIRED BY ASTRONAUT.
037383,000566: 30,3012 04674 TC IBNKCALL
037384,000567: 30,3013 40123 CADR RESTORDB
037385,000568: 30,3014 05516 TC DOWNFLAG # DISALLOW ABORTS AT THIS TIME.
037386,000569: 30,3015 00215 ADRES LETABORT
037387,000570: 30,3016 16001 TCF GOTOPOOH
037388,000571:
037389,000572: 30,3017 04125 V16N85C VN 1685
037390,000573:
037391,000574: 27,3312 BANK 27
037392,000575: 27,2000 SETLOC ASENT1
037393,000576: 27,2000 BANK
037394,000577: 27,3312 COUNT* $$/ASENT
037395,000578:
037396,000579: 27,3312 50375 YCOMP VLOAD DOT
037397,000580: 27,3313 03537 UNIT/R/
037398,000581: 27,3314 03720 QAXIS
037399,000582: 27,3315 41312 SL2 DMP
037400,000583: 27,3316 03631 RCO
037401,000584: 27,3317 02335 STORE Y
037402,000585: 27,3320 77616 RVQ
037403,000586:
037404,000587: 30,3020 BANK 30
037405,000588: 30,2000 SETLOC ASENT
037406,000589: 30,2000 BANK
037407,000590:
![]() |
Page 855 |
037409,000592: # ASCENT GUIDANCE CONSTANTS
037410,000593:
037411,000594: 30,3020 33,3146 100CS EQUALS 2SEC(18)
037412,000595: 30,3020 30,3022 T2A EQUALS 2SEC(17)
037413,000596: 30,3020 00062 00000 4SEC(17) 2DEC 400 B-17
037414,000597: 30,3022 00031 00000 2SEC(17) 2DEC 200 B-17
037415,000598: 30,3024 00175 00000 T3 2DEC 1000 B-17
037416,000599: 30,3026 00045 20000 6SEC(18) 2DEC 600 B-18
037417,000600: 30,3030 00010 BIT4H OCT 10
037418,000601: 30,3031 14400 00000 2SEC(9) 2DEC 200 B-9
037419,000602: 30,3033 01477 V06N63* VN 0663
037420,000603: 30,3034 01514 V06N76 VN 0676
037421,000604: 30,3035 01441 V06N33A VN 0633
037422,000605:
037423,000606: 33,2200 BANK 33
037424,000607: 33,2000 SETLOC ASENT6
037425,000608: 33,2000 BANK
037426,000609: 33,2200 COUNT* $$/ASENT
037427,000610:
037428,000611: 33,2200 20000 00000 KT1 2DEC 0.5000
037429,000612: 33,2202 75751 41775 PRLIMIT 2DEC -.0639 # (B/TBUP)MIN=-.1FT.SEC(-3)
037430,000613: 33,2204 00022 07212 MINABDV 2DEC .0356 B-5 # 10 PERCENT BIGGER THAN GRAVITY
037431,000614: 33,2206 E7,1570 1/DV0 = MASS1
037432,000615:
![]() |
Page 856 |
037434,000617: # THE LOGARITHM SUBROUTINE
037435,000618:
037436,000619: 24,3670 BANK 24
037437,000620: 30,2000 SETLOC FLOGSUB
037438,000621: 30,2000 BANK
037439,000622:
037440,000623: # INPUT ..... X IN MPAC
037441,000624: # OUTPUT ..... -LOG(X) IN MPAC
037442,000625:
037443,000626: 30,3036 44301 LOGSUB NORM BDSU
037444,000627: 30,3037 00163 MPAC +6
037445,000628: 30,3040 17771 NEARONE
037446,000629: 30,3041 77776 EXIT
037447,000630: 30,3042 07222 TC POLY
037448,000631: 30,3043 00006 DEC 6 B-14
037449,000632: 30,3044 00000 00002 2DEC .0000000060
037450,000633: 30,3046 76777 77175 2DEC -.0312514377
037451,000634: 30,3050 77400 75416 2DEC -.0155686771
037452,000635: 30,3052 77507 65515 2DEC -.0112502068
037453,000636: 30,3054 77741 63547 2DEC -.0018545108
037454,000637: 30,3056 77052 55373 2DEC -.0286607906
037455,000638: 30,3060 01167 30361 2DEC .0385598563
037456,000639: 30,3062 76520 75267 2DEC -.0419361902
037457,000640:
037458,000641: 30,3064 34755 CAF ZERO
037459,000642: 30,3065 54156 TS MPAC +2
037460,000643: 30,3066 00006 EXTEND
037461,000644: 30,3067 33103 DCA CLOG2/32
037462,000645: 30,3070 52155 DXCH MPAC
037463,000646: 30,3071 52132 DXCH BUF +1
037464,000647: 30,3072 30162 CA MPAC +6
037465,000648: 30,3073 07307 TC SHORTMP
037466,000649: 30,3074 52156 DXCH MPAC +1
037467,000650: 30,3075 52155 DXCH MPAC
037468,000651: 30,3076 52132 DXCH BUF +1
037469,000652: 30,3077 20155 DAS MPAC
037470,000653: 30,3100 06037 TC INTPRET
037471,000654: 30,3101 43476 DCOMP RVQ
037472,000655:
037473,000656: 30,3102 00542 34414 CLOG2/32 2DEC .0216608494
037474,000657:
End of include-file ASCENT_GUIDANCE.agc. Parent file is MAIN.agc