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