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