Source Code
These source-code files are part of a reconstructed copy of Luminary 163, the
first (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with reconstructed source code for Luminary 173. Changes between revision 163 and 173 were backed out, as described by Luminary memos 157 and 158. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 163 listing would be different. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
036397,000002: ## Copyright: Public domain.
036398,000003: ## Filename: ASCENT_GUIDANCE.agc
036399,000004: ## Purpose: A section of Luminary revision 163.
036400,000005: ## It is part of the reconstructed source code for the first
036401,000006: ## (unflown) release of the flight software for the Lunar
036402,000007: ## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
036403,000008: ## The code has been recreated from a reconstructed copy of
036404,000009: ## Luminary 173, as well as Luminary memos 157 amd 158.
036405,000010: ## It has been adapted such that the resulting bugger words
036406,000011: ## exactly match those specified for Luminary 163 in NASA
036407,000012: ## drawing 2021152N, which gives relatively high confidence
036408,000013: ## that the reconstruction is correct.
036409,000014: ## Reference: pp. 834-849
036410,000015: ## Assembler: yaYUL
036411,000016: ## Contact: Ron Burkey <info@sandroid.org>.
036412,000017: ## Website: www.ibiblio.org/apollo/index.html
036413,000018: ## Mod history: 2019-08-21 MAS Created from Luminary 173.
036414,000019:
Page 834 |
036416,000021: 34,3375 BANK 34
036417,000022: 34,2000 SETLOC ASCFILT
036418,000023: 34,2000 BANK
036419,000024:
036420,000025: 34,3375 E7,1515 EBANK= DVCNTR
036421,000026:
036422,000027: 34,3375 COUNT* $$/ASENT
036423,000028:
036424,000029: 34,3375 05364 ATMAG TC PHASCHNG
036425,000030: 34,3376 00035 OCT 00035
036426,000031: 34,3377 06042 TC INTPRET
036427,000032: 34,3400 77614 BON
036428,000033: 34,3401 04705 FLRCS
036429,000034: 34,3402 60312 ASCENT
036430,000035: 34,3403 45345 DLOAD DSU
036431,000036: 34,3404 03514 ABDVCONV
036432,000037: 34,3405 26122 MINABDV
036433,000038: 34,3406 43040 BMN CLEAR
036434,000039: 34,3407 60750 ASCTERM4
036435,000040: 34,3410 04267 SURFFLAG
036436,000041: 34,3411 67214 CLEAR SLOAD
036437,000042: 34,3412 02676 RENDWFLG
036438,000043: 34,3413 31451 BIT3H
036439,000044: 34,3414 77471 DDV EXIT
036440,000045: 34,3415 03514 ABDVCONV
036441,000046: 34,3416 52155 DXCH MPAC
036442,000047: 34,3417 53641 DXCH 1/DV3
036443,000048: 34,3420 53637 DXCH 1/DV2
036444,000049: 34,3421 53635 DXCH 1/DV1
036445,000050: 34,3422 53571 DXCH 1/DV0
036446,000051: 34,3423 06042 TC INTPRET
036447,000052: 34,3424 43345 DLOAD DAD
036448,000053: 34,3425 03571 1/DV0
036449,000054: 34,3426 03635 1/DV1
036450,000055: 34,3427 43215 DAD DAD
036451,000056: 34,3430 03637 1/DV2
036452,000057: 34,3431 03641 1/DV3
036453,000058: 34,3432 41205 DMP DMP
036454,000059: 34,3433 02233 VE
036455,000060: 34,3434 21011 2SEC(9)
036456,000061: 34,3435 65252 SL3 PDDL
036457,000062: 34,3436 02237 TBUP
036458,000063: 34,3437 43342 SR1 DAD
Page 835 |
036460,000065: 34,3440 77625 DSU
036461,000066: 34,3441 21006 6SEC(18)
036462,000067: 34,3442 16237 STODL TBUP
036463,000068: 34,3443 02233 VE
036464,000069: 34,3444 56342 SR1 DDV
036465,000070: 34,3445 02237 TBUP
036466,000071: 34,3446 36231 STCALL AT
036467,000072: 34,3447 60312 ASCENT
036468,000073:
036469,000074: 34,3450 00004 BIT3H OCT 4
036470,000075:
Page 836 |
036472,000077: 30,2312 BANK 30
036473,000078: 30,2000 SETLOC ASENT
036474,000079: 30,2000 BANK
036475,000080: 30,2312 COUNT* $$/ASENT
036476,000081:
036477,000082:
036478,000083: 30,2312 51575 ASCENT VLOAD ABVAL
036479,000084: 30,2313 03521 R
036480,000085: 30,2314 26247 STOVL /R/MAG
036481,000086: 30,2315 03726 ZAXIS1
036482,000087: 30,2316 72441 DOT SL1
036483,000088: 30,2317 03527 V # Z.V = ZDOT*2(-8).
036484,000089: 30,2320 26261 STOVL ZDOT # ZDOT*2(-7)
036485,000090: 30,2321 03726 ZAXIS1
036486,000091: 30,2322 76435 VXV VSL1
036487,000092: 30,2323 03537 UNIT/R/ # Z X UR = LAXIS*2(-2)
036488,000093: 30,2324 02251 STORE LAXIS # LAXIS*2(-1)
036489,000094: 30,2325 72441 DOT SL1
036490,000095: 30,2326 03527 V # L.V = YDOT*2(-8).
036491,000096: 30,2327 36257 STCALL YDOT # YDOT * 2(-7)
036492,000097: 30,2330 57317 YCOMP
036493,000098: 30,2331 77775 VLOAD
036494,000099: 30,2332 03563 GDT1/2 # LOAD GDT1/2*2(-7)M/CS.
036495,000100: 30,2333 50341 V/SC DOT
036496,000101: 30,2334 27014 2SEC(18)
036497,000102: 30,2335 03537 UNIT/R/ # G.UR*2(9) = GR*2(9).
036498,000103: 30,2336 47315 PDVL VXV # STORE IN PDL(0) (2)
036499,000104: 30,2337 03537 UNIT/R/ # LOAD UNIT/R/*2(-1).
036500,000105: 30,2340 03527 V # UR*2(-1) X V*2(-7) = H/R*2(-8).
036501,000106: 30,2341 56236 VSQ DDV # H(2)/R(2)*2(-16).
036502,000107: 30,2342 02247 /R/MAG # H(2)/R(3)*2(9).
036503,000108: 30,2343 43352 SL1 DAD
036504,000109: 30,2344 77626 STADR
036505,000110: 30,2345 75514 STORE GEFF # GEFF*2(10)M/CS/CS
036506,000111: 30,2346 45014 BOFF CALL # IF P7071FLG = 1 (I.E. P70 OR P71)
036507,000112: 30,2347 04742 P7071FLG # CALL ZDOTDCMP TO UPDATE ZDOTD
036508,000113: 30,2350 60352 +2 # ON THE BASIS OF THE LAST RP.
036509,000114: 30,2351 71527 ZDOTDCMP
036510,000115: 30,2352 45345 +2 DLOAD DSU
036511,000116: 30,2353 02245 ZDOTD
036512,000117: 30,2354 02261 ZDOT
036513,000118: 30,2355 02311 STORE DZDOT # DZDOT = (ZDOTD - ZDOT)*2(7)M/CS.
036514,000119: 30,2356 65361 VXSC PDDL
036515,000120: 30,2357 03726 ZAXIS1
036516,000121: 30,2360 02243 YDOTD
Page 837 |
036518,000123: 30,2361 77625 DSU
036519,000124: 30,2362 02257 YDOT
036520,000125: 30,2363 02307 STORE DYDOT # DYDOT = (YDOTD - YDOT)*2(7)M/CS.
036521,000126: 30,2364 65361 VXSC PDDL
036522,000127: 30,2365 02251 LAXIS
036523,000128: 30,2366 02241 RDOTD
036524,000129: 30,2367 77625 DSU
036525,000130: 30,2370 03474 RDOT
036526,000131: 30,2371 02305 STORE DRDOT # DRDOT = (RDOTD - RDOT)*2(7)M/CS.
036527,000132: 30,2372 53361 VXSC VAD
036528,000133: 30,2373 03537 UNIT/R/
036529,000134: 30,2374 76455 VAD VSL1
036530,000135: 30,2375 77626 STADR
036531,000136: 30,2376 74131 STORE VGVECT # VG = (DRDOT)R + (DYDOT)L + (DZDOT)Z.
036532,000137: 30,2377 41345 DLOAD DMP # LOAD TGO
036533,000138: 30,2400 03517 TGO # TGO GEFF
036534,000139: 30,2401 02263 GEFF
036535,000140: 30,2402 76561 VXSC VSL1
036536,000141: 30,2403 03537 UNIT/R/ # TGO GEFF UR
036537,000142: 30,2404 77645 BVSU
036538,000143: 30,2405 03646 VGVECT # COMPENSATED FOR GEFF
036539,000144: 30,2406 03646 STORE VGVECT # STORE FOR DOWNLINK
036540,000145: 30,2407 76521 MXV VSL1 # GET VGBODY FOR N85 DISPLAY
036541,000146: 30,2410 02146 XNBPIP
036542,000147: 30,2411 27502 STOVL VGBODY
036543,000148: 30,2412 03646 VGVECT
036544,000149: 30,2413 43046 ABVAL BOFF # MAGNITUDE OF VGVECT
036545,000150: 30,2414 04745 FLRCS # IF FLRCS=0,DO NORMAL GUIDANCE
036546,000151: 30,2415 60424 MAINENG
036547,000152: 30,2416 77671 DDV # USE TGO=VG/AT WITH RCS
036548,000153: 30,2417 20001 AT/RCS
036549,000154: 30,2420 37517 STCALL TGO # THIS WILL BE USED ON NEXT CYCLE
036550,000155: 30,2421 71500 RPCOMP1 # COMPUTE NEW RP FOR NEXT CYCLE.
036551,000156: 30,2422 77650 GOTO
036552,000157: 30,2423 60746 ASCTERM2
036553,000158: 30,2424 41471 MAINENG DDV PUSH # VG/VE IN PDL(0) (2)
036554,000159: 30,2425 02233 VE
036555,000160: 30,2426 44342 SR1 BDSU # 1 - VG / 2 VE
036556,000161: 30,2427 17776 NEARONE
036557,000162: 30,2430 41205 DMP DMP # TBUP VG(1-KT VG/VE)/VE (0)
036558,000163: 30,2431 02237 TBUP # = TGO
036559,000164: 30,2432 77625 DSU # COMPENSATE FOR TAILOFF
036560,000165: 30,2433 02235 TTO
036561,000166: 30,2434 03517 STORE TGO
036562,000167: 30,2435 57461 SR DCOMP
036563,000168: 30,2436 20614 11D
036564,000169: 30,2437 17454 STODL TTOGO # TGO*2(-28)CS
036565,000170: 30,2440 03517 TGO
036566,000171: 30,2441 45214 BON DSU
036567,000172: 30,2442 03710 IDLEFLAG
Page 838 |
036569,000174: 30,2443 60447 T2TEST
036570,000175: 30,2444 21000 4SEC(17) # ( TGO - 4 )*2(-17)CS.
036571,000176: 30,2445 77640 BMN
036572,000177: 30,2446 30347 ENGOFF
036573,000178: 30,2447 77745 T2TEST DLOAD
036574,000179: 30,2450 03517 TGO
036575,000180: 30,2451 50025 DSU BMN # IF TGO - T2 NEG., GO TO CMPONENT
036576,000181: 30,2452 21002 T2A
036577,000182: 30,2453 60607 CMPONENT
036578,000183: 30,2454 45345 DLOAD DSU
036579,000184: 30,2455 02237 TBUP
036580,000185: 30,2456 03517 TGO
036581,000186: 30,2457 45071 DDV CALL # 1-TGO/TBUP
036582,000187: 30,2460 02237 TBUP
036583,000188: 30,2461 61015 LOGSUB
036584,000189: 30,2462 41461 SL PUSH # -L IN PDL(0) (2)
036585,000190: 30,2463 20206 5
036586,000191: 30,2464 44265 BDDV BDSU # -TGO/L*2(-17)
036587,000192: 30,2465 03517 TGO
036588,000193: 30,2466 02237 TBUP # TBUP + TGO/L = D12*2(-17)
036589,000194: 30,2467 43006 PUSH BON # STORE IN PDL(2) (4)
036590,000195: 30,2470 04703 FLPC # IF FLPC = 1, GO TO CONST
036591,000196: 30,2471 60500 NORATES
036592,000197: 30,2472 45345 DLOAD DSU
036593,000198: 30,2473 03517 TGO
036594,000199: 30,2474 21004 T3
036595,000200: 30,2475 43044 BPL SET # FLPC=1
036596,000201: 30,2476 60505 RATES
036597,000202: 30,2477 04463 FLPC
036598,000203: 30,2500 77745 NORATES DLOAD
036599,000204: 30,2501 06520 HI6ZEROS
036600,000205: 30,2502 02317 STORE PRATE # B = 0
036601,000206: 30,2503 36321 STCALL YRATE # D = 0
036602,000207: 30,2504 60567 CONST # GO TO CONST
036603,000208: 30,2505 45345 RATES DLOAD DSU
036604,000209: 30,2506 03517 TGO
036605,000210: 30,2507 00003 02D # TGO - D12 = D21*2(-17)
036606,000211: 30,2510 72406 PUSH SL1 # IN PDL(4) (6)
036607,000212: 30,2511 52421 BDSU SL3 # (1/2TGO - D21)*2(-13) = E * 2(-13)
036608,000213: 30,2512 03517 TGO # (8)
036609,000214: 30,2513 41325 PDDL DMP # IN PDL(6)
036610,000215: 30,2514 03517 TGO
036611,000216: 30,2515 03474 RDOT # RDOT TGO * 2(-24)
036612,000217: 30,2516 45215 DAD DSU # R + RDOT TGO
036613,000218: 30,2517 02247 /R/MAG # R + RDOT TGO - RCO
036614,000219: 30,2520 03631 RCO # MPAC = - DR*2(-24).
036615,000220: 30,2521 41325 PDDL DMP # -DR IN PDL(8) (10)
036616,000221: 30,2522 02305 DRDOT
036617,000222: 30,2523 00005 04D # D21 DRDOT*2(-24)
036618,000223: 30,2524 62415 DAD SL2 # (D21 DRDOT-DR)*2(-22) (8)
Page 839 |
036620,000225: 30,2525 56271 DDV DDV
036621,000226: 30,2526 00007 06D # (D21 DRDOT-DR)/E*2(-9)
036622,000227: 30,2527 03517 TGO
036623,000228: 30,2530 02317 STORE PRATE # B * 2(8)
036624,000229: 30,2531 71240 BMN DLOAD # B>0 NOT PERMITTED
036625,000230: 30,2532 60536 CHKBMAG
036626,000231: 30,2533 06520 HI6ZEROS
036627,000232: 30,2534 36317 STCALL PRATE
036628,000233: 30,2535 60550 PROK
036629,000234: 30,2536 56202 CHKBMAG SR4 DDV # B*2(4)
036630,000235: 30,2537 02237 TBUP # (B / TAU) * 2(21)
036631,000236: 30,2540 51025 DSU BPL
036632,000237: 30,2541 26120 PRLIMIT # ( B/ TAU) * 2(21) MAX.
036633,000238: 30,2542 60550 PROK
036634,000239: 30,2543 41345 DLOAD DMP
036635,000240: 30,2544 26120 PRLIMIT
036636,000241: 30,2545 02237 TBUP # B MAX. * 2(4)
036637,000242: 30,2546 77612 SL4 # BMAX*2(8)
036638,000243: 30,2547 02317 STORE PRATE
036639,000244: 30,2550 77745 PROK DLOAD
036640,000245: 30,2551 03517 TGO
036641,000246: 30,2552 43205 DMP DAD # YDOT TGO
036642,000247: 30,2553 02257 YDOT
036643,000248: 30,2554 02303 Y # Y + YDOT TGO
036644,000249: 30,2555 65225 DSU PDDL # Y + YDOT TGO - YCO
036645,000250: 30,2556 03633 YCO # MPAC = - DY*2(-24.) IN PDL(8) (10)
036646,000251: 30,2557 02307 DYDOT
036647,000252: 30,2560 43205 DMP DAD # D21 DYDOT - DY (8)
036648,000253: 30,2561 00005 04D
036649,000254: 30,2562 56312 SL2 DDV # (D21 DYDOT - DY)/E*2(-9)
036650,000255: 30,2563 40271 DDV SETPD # (D21 DYDOT - DY)/E TGO*2(8)
036651,000256: 30,2564 03517 TGO # = D*2(8)
036652,000257: 30,2565 00005 04
036653,000258: 30,2566 02321 STORE YRATE
036654,000259: 30,2567 41345 CONST DLOAD DMP # LOAD B*2(8)
036655,000260: 30,2570 02317 PRATE # B D12*2(-9)
036656,000261: 30,2571 00003 02D
036657,000262: 30,2572 56325 PDDL DDV # D12 B IN PDL(4) (6)
036658,000263: 30,2573 02305 DRDOT # LOAD DRDOT*2(-7)
036659,000264: 30,2574 00001 00D # -DRDOT/L*2(-7)
036660,000265: 30,2575 45302 SR2 DSU # (-DRDOT/L-D12 B)=A*2(-9) (4)
036661,000266: 30,2576 77626 STADR
036662,000267: 30,2577 61464 STODL PCONS
036663,000268: 30,2600 02321 YRATE # D*2(8)
036664,000269: 30,2601 65205 DMP PDDL # D12 D,EXCH WITH -L IN PDL(0) (2,2)
036665,000270: 30,2602 60465 BDDV SR2 # -DYDOT/L*2(-9)
036666,000271: 30,2603 02307 DYDOT
036667,000272: 30,2604 77625 DSU # (-DYDOT/L-D12 D)=C*2(-9)
036668,000273: 30,2605 00001 00D
036669,000274: 30,2606 02315 STORE YCONS
Page 840 |
036671,000276: 30,2607 43001 CMPONENT SETPD BOFF
036672,000277: 30,2610 00001 00D
036673,000278: 30,2611 04742 P7071FLG
036674,000279: 30,2612 60615 +3 # IF P7071FLG = 1 (I.E. P70 OR P71)
036675,000280: 30,2613 77624 CALL # COMPUTE NEW RP FOR NEXT CYCLE.
036676,000281: 30,2614 71504 RPCOMP2
036677,000282: 30,2615 41345 +3 DLOAD DMP
036678,000283: 30,2616 27014 100CS
036679,000284: 30,2617 02317 PRATE # B(T-T0)*2(-9)
036680,000285: 30,2620 56215 DAD DDV # (A+B(T-T0))*2(-9)
036681,000286: 30,2621 02313 PCONS # (A+B(T-T0))/TBUP*2(8)
036682,000287: 30,2622 02237 TBUP
036683,000288: 30,2623 45352 SL1 DSU
036684,000289: 30,2624 02263 GEFF # ATR*2(9)
036685,000290: 30,2625 16325 STODL ATR
036686,000291: 30,2626 27014 100CS
036687,000292: 30,2627 43205 DMP DAD
036688,000293: 30,2630 02321 YRATE
036689,000294: 30,2631 02315 YCONS # (C+D(T-T0))*2(-9)
036690,000295: 30,2632 72471 DDV SL1
036691,000296: 30,2633 02237 TBUP
036692,000297: 30,2634 02323 STORE ATY # ATY*2(9)
036693,000298: 30,2635 65361 VXSC PDDL # ATY UY*2(8) (6)
036694,000299: 30,2636 02251 LAXIS
036695,000300: 30,2637 02325 ATR
036696,000301: 30,2640 53361 VXSC VAD # (0)
036697,000302: 30,2641 03537 UNIT/R/
036698,000303: 30,2642 41572 VSL1 PUSH # AH*2(9) IN PDL(0) (6)
036699,000304: 30,2643 65246 ABVAL PDDL # AH(2) IN PDL(34)
036700,000305: 30,2644 02231 AT # AHMAG IN PDL(6) (8)
036701,000306: 30,2645 45316 DSQ DSU # (AT(2)-AH(2))*2(18)
036702,000307: 30,2646 00043 34D # =ATP2*2(18)
036703,000308: 30,2647 41525 PDDL PUSH # (12)
036704,000309: 30,2650 02231 AT
036705,000310: 30,2651 45316 DSQ DSU # (AT(2)KR(2)-AH(2))*2(18) (10)
036706,000311: 30,2652 00043 34D # =ATP3*2(18)
036707,000312: 30,2653 71240 BMN DLOAD # IF ATP3 NEG,GO TO NO-ATP
036708,000313: 30,2654 60660 NO-ATP # LOAD ATP2,IF ATP3 POS
036709,000314: 30,2655 00011 8D
036710,000315: 30,2656 52166 SQRT GOTO # ATP*2(9)
036711,000316: 30,2657 60666 AIMER
036712,000317: 30,2660 55345 NO-ATP DLOAD BDDV # KR AT/AH = KH (8)
036713,000318: 30,2661 00007 6D
036714,000319: 30,2662 77761 VXSC # KH AH*2(9)
036715,000320: 30,2663 00001 00D
036716,000321: 30,2664 14001 STODL 00D # STORE NEW AH IN PDL(0)
036717,000322: 30,2665 06520 HI6ZEROS
036718,000323: 30,2666 77765 AIMER SIGN
036719,000324: 30,2667 02311 DZDOT
036720,000325: 30,2670 02327 STORE ATP
Page 841 |
036722,000327: 30,2671 77761 VXSC
036723,000328: 30,2672 03726 ZAXIS1 # ATP ZAXIS *2(8).
036724,000329: 30,2673 53372 VSL1 VAD # AT*2(9)
036725,000330: 30,2674 00001 00D
036726,000331: 30,2675 03253 STORE UNFC/2 # WILL BE OVERWRITTEN IF IN VERT. RISE.
036727,000332: 30,2676 43001 SETPD BON
036728,000333: 30,2677 00001 00D
036729,000334: 30,2700 04704 FLPI
036730,000335: 30,2701 60213 P12RET
036731,000336: 30,2702 77614 BON
036732,000337: 30,2703 04701 FLVR
036733,000338: 30,2704 60755 CHECKALT
036734,000339: 30,2705 57575 MAINLINE VLOAD VCOMP
036735,000340: 30,2706 03537 UNIT/R/
036736,000341: 30,2707 17261 STODL UNWC/2
036737,000342: 30,2710 03654 TXO
036738,000343: 30,2711 51025 DSU BPL
036739,000344: 30,2712 01234 PIPTIME
036740,000345: 30,2713 60721 ASCTERM
036741,000346: 30,2714 77614 BON
036742,000347: 30,2715 04711 ROTFLAG
036743,000348: 30,2716 57277 ANG1CHEK
036744,000349: 30,2717 77614 CLRXFLAG CLEAR
036745,000350: 30,2720 06666 XOVINFLG # (XOVINFLG)
036746,000351: 30,2721 77776 ASCTERM EXIT
036747,000352: 30,2722 30105 CA FLAGWRD9
036748,000353: 30,2723 74742 MASK FLRCSBIT
036749,000354: 30,2724 10000 CCS A
036750,000355: 30,2725 12747 TCF ASCTERM3
036751,000356: 30,2726 06042 TC INTPRET
036752,000357: 30,2727 77624 CALL
036753,000358: 30,2730 61072 FINDCDUW -2
036754,000359: 30,2731 77776 ASCTERM1 EXIT
036755,000360: 30,2732 30105 +1 CA FLAGWRD9 # INSURE THAT THE NOUN 63 DISPLAY IS
036756,000361: 30,2733 74742 MASK FLRCSBIT # BYPASSED IF WE ARE IN THE RCS TRIMMING
036757,000362: 30,2734 10000 CCS A # MODE OF OPERATION
036758,000363: 30,2735 12747 TCF ASCTERM3
036759,000364: 30,2736 30104 CA FLAGWRD8 # BYPASS DISPLAYS IF ENGINE FAILURE IS
036760,000365: 30,2737 74742 MASK FLUNDBIT # INDICATED.
036761,000366: 30,2740 10000 CCS A
036762,000367: 30,2741 12747 TCF ASCTERM3
036763,000368: 30,2742 05165 TC VACRLEAS
036764,000369: 30,2743 33012 CAF V06N63*
036765,000370: 30,2744 04616 TC BANKCALL
036766,000371: 30,2745 20444 CADR GODSP
036767,000372: 30,2746 77776 ASCTERM2 EXIT
036768,000373: 30,2747 15155 ASCTERM3 TCF ENDOFJOB
036769,000374: 30,2750 77776 ASCTERM4 EXIT
036770,000375: 30,2751 00004 INHINT
036771,000376: 30,2752 04674 TC IBNKCALL # NO GUIDANCE THIS CYCLE -- HENCE ZERO
036772,000377: 30,2753 40166 CADR STOPRATE # THE DAP COMMANDED RATES.
036773,000378: 30,2754 12732 TCF ASCTERM1 +1
036774,000379:
036775,000380: 30,2755 45345 CHECKALT DLOAD DSU
036776,000381: 30,2756 02247 /R/MAG
036777,000382: 30,2757 02301 /LAND/
036778,000383: 30,2760 50025 DSU BMN # IF H LT 25K CHECK Z AXIS ORIENTATION.
036779,000384: 30,2761 26124 25KFT
036780,000385: 30,2762 16661 CHECKYAW
036781,000386: 30,2763 43014 EXITVR CLEAR BON
036782,000387: 30,2764 04661 FLVR
036783,000388: 30,2765 04711 ROTFLAG
036784,000389: 30,2766 60705 MAINLINE
036785,000390: 30,2767 43345 DLOAD DAD
036786,000391: 30,2770 01234 PIPTIME
036787,000392: 30,2771 25624 10SECS
036788,000393: 30,2772 37654 STCALL TXO
036789,000394: 30,2773 60705 MAINLINE
036790,000395: 30,2774 77614 EXITVR1 CLRGO
036791,000396: 30,2775 04631 ROTFLAG
036792,000397: 30,2776 60763 EXITVR
036793,000398:
036794,000399: 27,2000 SETLOC ASENT1
036795,000400: 27,2000 BANK
036796,000401: 27,3277 COUNT* $$/ASENT
036797,000402:
036798,000403: 27,3277 53575 ANG1CHEK VLOAD UNIT
036799,000404: 27,3300 03253 UNFC/2
036800,000405: 27,3301 77641 DOT
036801,000406: 27,3302 02146 XNBPIP
036802,000407: 27,3303 51025 DSU BPL
036803,000408: 27,3304 02566 COSTHET1
036804,000409: 27,3305 57314 OFFROT
036805,000410: 27,3306 50375 VLOAD DOT
036806,000411: 27,3307 02146 XNBPIP
036807,000412: 27,3310 03537 UNIT/R/
036808,000413: 27,3311 50025 DSU BMN
036809,000414: 27,3312 02570 COSTHET2
036810,000415: 27,3313 71453 KEEPVR1
036811,000416: 27,3314 77614 OFFROT CLRGO
036812,000417: 27,3315 04631 ROTFLAG
036813,000418: 27,3316 60717 CLRXFLAG
036814,000419:
036815,000420: 07,2661 BANK 7
036816,000421: 07,2000 SETLOC ASENT2
036817,000422: 07,2000 BANK
036818,000423: 07,2661 COUNT* $$/ASENT
036819,000424:
Page 843 |
036821,000426: 07,2661 07,2661 SETXFLAG = CHECKYAW
036822,000427:
036823,000428: 07,2661 77614 CHECKYAW SET
036824,000429: 07,2662 06466 XOVINFLG # PROHIBIT X-AXIS OVERRIDE
036825,000430: 07,2663 74345 DLOAD VXSC
036826,000431: 07,2664 02323 ATY
036827,000432: 07,2665 02251 LAXIS
036828,000433: 07,2666 74325 PDDL VXSC
036829,000434: 07,2667 02327 ATP
036830,000435: 07,2670 03726 ZAXIS1
036831,000436: 07,2671 53455 VAD UNIT
036832,000437: 07,2672 45325 PDDL DSU
036833,000438: 07,2673 03474 RDOT
036834,000439: 07,2674 13507 40FPS
036835,000440: 07,2675 52044 BPL GOTO
036836,000441: 07,2676 60774 EXITVR1
036837,000442: 07,2677 71451 KEEPVR
036838,000443:
036839,000444: 05,3506 BANK 5
036840,000445: 05,2000 SETLOC ASENT3
036841,000446: 05,2000 BANK
036842,000447: 05,3506 COUNT* $$/ASENT
036843,000448:
036844,000449: 05,3506 00017 23305 40FPS 2DEC 0.12192 B-7
036845,000450:
036846,000451: 34,3451 BANK 34
036847,000452: 34,2000 SETLOC ASENT8
036848,000453: 34,2000 BANK
036849,000454: 34,3451 COUNT* $$/ASENT
036850,000455:
036851,000456: 34,3451 45575 KEEPVR VLOAD STADR # RECALL LOSVEC FROM PUSHLIST
036852,000457: 34,3452 74516 STORE UNWC/2
036853,000458: 34,3453 77775 KEEPVR1 VLOAD
036854,000459: 34,3454 03537 UNIT/R/
036855,000460: 34,3455 37253 STCALL UNFC/2
036856,000461: 34,3456 60721 ASCTERM
036857,000462:
036858,000463:
036859,000464: 14,2347 BANK 14
036860,000465: 14,2000 SETLOC ASENT4
036861,000466: 14,2000 BANK
036862,000467: 14,2347 COUNT* $$/ASENT
036863,000468:
036864,000469: 14,2347 77634 ENGOFF RTB
036865,000470: 14,2350 21574 LOADTIME
036866,000471: 14,2351 43225 DSU DAD
036867,000472: 14,2352 01234 PIPTIME
036868,000473: 14,2353 03454 TTOGO
036869,000474: 14,2354 77476 DCOMP EXIT
036870,000475: 14,2355 07262 TC TPAGREE # FORCE SIGN AGREEMENT ON MPAC, MPAC +1.
036871,000476: 14,2356 35016 CAF EBANK7
036872,000477: 14,2357 54003 TS EBANK
036873,000478: 14,2360 E7,1516 EBANK= TGO
036874,000479: 14,2360 00004 INHINT
036875,000480: 14,2361 10155 CCS MPAC +1
Page 844 |
036877,000482: 14,2362 12365 TCF +3 # C(A) = DT - 1 BIT
036878,000483: 14,2363 12365 TCF +2 # C(A) = 0
036879,000484: 14,2364 34755 CAF ZERO # C(A) = 0
036880,000485: 14,2365 64753 AD BIT1 # C(A) = 1 BIT OR DT.
036881,000486: 14,2366 55644 TS ENGOFFDT
036882,000487: 14,2367 05204 TC TWIDDLE
036883,000488: 14,2370 02402 ADRES ENGOFF1
036884,000489: 14,2371 05364 TC PHASCHNG
036885,000490: 14,2372 47014 OCT 47014
036886,000491: 14,2373 76133 -GENADR ENGOFFDT
036887,000492: 14,2374 E7,1516 EBANK= TGO
036888,000493: 14,2374 02402 30067 2CADR ENGOFF1
036889,000494:
036890,000495: 14,2376 06042 TC INTPRET
036891,000496: 14,2377 52014 SET GOTO
036892,000497: 14,2400 03470 IDLEFLAG # DISABLE DELTA-V MONITOR
036893,000498: 14,2401 60447 T2TEST
036894,000499:
036895,000500: 14,2402 04674 ENGOFF1 TC IBNKCALL # SHUT OFF THE ENGINE.
036896,000501: 14,2403 75560 CADR ENGINOF2
036897,000502:
036898,000503: 14,2404 35027 CAF PRIO17 # SET UP A JOB FOR THE ASCENT GUIDANCE
036899,000504: 14,2405 05072 TC NOVAC
036900,000505: 14,2406 E7,1455 EBANK= WHICH
036901,000506: 14,2406 02416 30067 2CADR CUTOFF
036902,000507:
036903,000508: 14,2410 05364 TC PHASCHNG
036904,000509: 14,2411 07024 OCT 07024
036905,000510: 14,2412 17000 OCT 17000
036906,000511: 14,2413 E7,1516 EBANK= TGO
036907,000512: 14,2413 02416 30067 2CADR CUTOFF
036908,000513:
036909,000514: 14,2415 15272 TCF TASKOVER
036910,000515:
036911,000516: 14,2416 05515 CUTOFF TC UPFLAG # SET FLRCS FLAG.
036912,000517: 14,2417 00214 ADRES FLRCS
036913,000518:
036914,000519: 14,2420 32437 -5 CAF V16N63
036915,000520: 14,2421 04616 TC BANKCALL
036916,000521: 14,2422 20477 CADR GOFLASH
036917,000522: 14,2423 12426 TCF +3
036918,000523: 14,2424 12430 TCF CUTOFF1
036919,000524: 14,2425 12420 TCF -5
036920,000525:
036921,000526: 14,2426 04635 +3 TC POSTJUMP
036922,000527: 14,2427 71467 CADR TERMASC
036923,000528:
036924,000529: 14,2430 00004 CUTOFF1 INHINT
036925,000530: 14,2431 04674 TC IBNKCALL # ZERO ATTITUDE ERRORS BEFORE REDUCING DB.
036926,000531: 14,2432 40154 CADR ZATTEROR
Page 845 |
036928,000533: 14,2433 04674 TC IBNKCALL
036929,000534: 14,2434 40141 CADR SETMINDB
036930,000535: 14,2435 04635 TC POSTJUMP
036931,000536: 14,2436 71457 CADR CUTOFF2
036932,000537:
036933,000538: 14,2437 04077 V16N63 VN 1663
036934,000539: 34,3457 BANK 34
036935,000540: 34,2000 SETLOC ASENT8
036936,000541: 34,2000 BANK
036937,000542: 34,3457 COUNT* $$/ASENT
036938,000543:
036939,000544: 34,3457 05364 CUTOFF2 TC PHASCHNG
036940,000545: 34,3460 04024 OCT 04024
036941,000546:
036942,000547: 34,3461 33477 CAF V16N85C
036943,000548: 34,3462 04616 TC BANKCALL
036944,000549: 34,3463 20477 CADR GOFLASH
036945,000550: 34,3464 13467 TCF TERMASC
036946,000551: 34,3465 13467 TCF +2 # PROCEED
036947,000552: 34,3466 13457 TCF CUTOFF2
036948,000553:
036949,000554: 34,3467 05364 TERMASC TC PHASCHNG
036950,000555: 34,3470 04024 OCT 04024
036951,000556:
036952,000557: 34,3471 00004 INHINT # RESTORE DEADBAND DESIRED BY ASTRONAUT.
036953,000558: 34,3472 04674 TC IBNKCALL
036954,000559: 34,3473 40115 CADR RESTORDB
036955,000560: 34,3474 05527 TC DOWNFLAG # DISALLOW ABORTS AT THIS TIME.
036956,000561: 34,3475 00215 ADRES LETABORT
036957,000562: 34,3476 16001 TCF GOTOPOOH
036958,000563:
036959,000564: 34,3477 04125 V16N85C VN 1685
036960,000565:
036961,000566: 34,3500 77745 RPCOMP1 DLOAD # FLRCS = 1 (TRIM MODE)
036962,000567: 34,3501 06520 HI6ZEROS
036963,000568: 34,3502 02313 STORE PCONS # SET PCONS = PRATE = 0 SO THAT
036964,000569: 34,3503 02317 STORE PRATE # RP = R + RDOT TGO
036965,000570: 34,3504 41345 RPCOMP2 DLOAD DMP # FLRCS = 0 (GUIDANCE MODE)
036966,000571: 34,3505 02317 PRATE # LEAVE PCONS AND PRATE ALONE SO THAT
036967,000572: 34,3506 03517 TGO # RP = R + RDOT TGO + (PCONS*TGO**2)/
036968,000573: 34,3507 43205 DMP DAD # (2 TBUP) + (PRATE*TGO**3)/(6 TBUP)
036969,000574: 34,3510 33645 THIRD
036970,000575: 34,3511 02313 PCONS
036971,000576: 34,3512 41205 DMP DMP
036972,000577: 34,3513 03517 TGO
036973,000578: 34,3514 03517 TGO
036974,000579: 34,3515 72471 DDV SL1
036975,000580: 34,3516 02237 TBUP
036976,000581: 34,3517 65215 DAD PDDL
036977,000582: 34,3520 02247 /R/MAG
Page 846 |
036979,000584: 34,3521 03474 RDOT
036980,000585: 34,3522 43205 DMP DAD
036981,000586: 34,3523 03517 TGO
036982,000587: 34,3524 77626 STADR
036983,000588: 34,3525 75155 STORE RP
036984,000589: 34,3526 77616 RVQ
036985,000590:
036986,000591: 34,3527 45020 ZDOTDCMP STQ CALL # COMPUTE CENTRAL ANGLE (0)
036987,000592: 34,3530 02571 ASCSAVE
036988,000593: 34,3531 71557 THETCOMP
036989,000594: 34,3532 43205 DMP DAD # CENTRAL ANGLE IN MPAC
036990,000595: 34,3533 02620 KPARM
036991,000596: 34,3534 02616 JPARM
036992,000597: 34,3535 41425 DSU PUSH # RA IN MPAC AND IN PUSHLIST (2)
036993,000598: 34,3536 02622 RP
036994,000599: 34,3537 51025 DSU BPL
036995,000600: 34,3540 02560 RAMIN
036996,000601: 34,3541 71544 +3
036997,000602: 34,3542 65345 DLOAD PDDL # RA < RAMIN. SET RA = RAMIN. (2)
036998,000603: 34,3543 02560 RAMIN
036999,000604: 34,3544 41345 +3 DLOAD DMP
037000,000605: 34,3545 00001 0D
037001,000606: 34,3546 16025 MUM(-37)
037002,000607: 34,3547 77725 PDDL
037003,000608: 34,3550 41215 DAD DMP
037004,000609: 34,3551 02622 RP
037005,000610: 34,3552 02622 RP
037006,000611: 34,3553 75465 BDDV SQRT # (0)
037007,000612: 34,3554 77626 STADR
037008,000613: 34,3555 41532 STCALL ZDOTD # UPDATE ZDOTD FOR GUIDANCE AND DOWNLINK.
037009,000614: 34,3556 02571 ASCSAVE
037010,000615:
037011,000616: 34,3557 53575 THETCOMP VLOAD UNIT
037012,000617: 34,3560 03521 R
037013,000618: 34,3561 53515 PDVL UNIT # (6)
037014,000619: 34,3562 01716 R(CSM)
037015,000620: 34,3563 47206 PUSH VXV # (12)
037016,000621: 34,3564 00001 0D
037017,000622: 34,3565 77641 DOT
037018,000623: 34,3566 02273 WM
037019,000624: 34,3567 24037 STOVL 30D # (6)
037020,000625: 34,3570 72441 DOT SL1 # (0)
037021,000626: 34,3571 75326 ARCCOS SIGN
037022,000627: 34,3572 00037 30D
037023,000628: 34,3573 77616 RVQ
037024,000629:
037025,000630: 34,3574 E5,1571 ASCSAVE = CG
037026,000631:
037027,000632: 27,3317 BANK 27
037028,000633: 27,2000 SETLOC ASENT1
037029,000634: 27,2000 BANK
037030,000635: 27,3317 COUNT* $$/ASENT
037031,000636:
Page 847 |
037033,000638: 27,3317 50375 YCOMP VLOAD DOT
037034,000639: 27,3320 03537 UNIT/R/
037035,000640: 27,3321 03720 QAXIS
037036,000641: 27,3322 41312 SL2 DMP
037037,000642: 27,3323 03631 RCO
037038,000643: 27,3324 02303 STORE Y
037039,000644: 27,3325 77616 RVQ
037040,000645:
037041,000646:
037042,000647: 30,2777 BANK 30
037043,000648: 30,2000 SETLOC ASENT
037044,000649: 30,2000 BANK
037045,000650:
Page 848 |
037047,000652: # ASCENT GUIDANCE CONSTANTS
037048,000653:
037049,000654: 30,2777 33,3013 100CS EQUALS 2SEC(18)
037050,000655: 30,2777 30,3001 T2A EQUALS 2SEC(17)
037051,000656: 30,2777 00062 00000 4SEC(17) 2DEC 400 B-17
037052,000657:
037053,000658: 30,3001 00031 00000 2SEC(17) 2DEC 200 B-17
037054,000659:
037055,000660: 30,3003 00175 00000 T3 2DEC 1000 B-17
037056,000661:
037057,000662: 30,3005 00045 20000 6SEC(18) 2DEC 600 B-18
037058,000663:
037059,000664: 30,3007 00010 BIT4H OCT 10
037060,000665:
037061,000666: 30,3010 14400 00000 2SEC(9) 2DEC 200 B-9
037062,000667:
037063,000668: 30,3012 01477 V06N63* VN 0663
037064,000669: 30,3013 01514 V06N76 VN 0676
037065,000670: 30,3014 01441 V06N33A VN 0633
037066,000671:
037067,000672: 33,2117 BANK 33
037068,000673: 33,2000 SETLOC ASENT6
037069,000674: 33,2000 BANK
037070,000675: 33,2117 COUNT* $$/ASENT
037071,000676:
037072,000677: 33,2117 75751 41775 PRLIMIT 2DEC -.0639 # (B/TBUP)MIN=-.1FT.SEC(-3)
037073,000678:
037074,000679: 33,2121 00022 07212 MINABDV 2DEC .0356 B-5 # 10 PERCENT BIGGER THAN GRAVITY
037075,000680:
037076,000681: 33,2123 00007 16100 25KFT 2DEC 7620 B-24
037077,000682:
037078,000683: 33,2125 E7,1570 1/DV0 = MASS1
037079,000684:
Page 849 |
037081,000686: # THE LOGARITHM SUBROUTINE
037082,000687:
037083,000688: 24,3632 BANK 24
037084,000689: 30,2000 SETLOC FLOGSUB
037085,000690: 30,2000 BANK
037086,000691:
037087,000692: # INPUT ..... X IN MPAC
037088,000693: # OUTPUT ..... -LOG(X) IN MPAC
037089,000694:
037090,000695: 30,3015 44301 LOGSUB NORM BDSU
037091,000696: 30,3016 00163 MPAC +6
037092,000697: 30,3017 17776 NEARONE
037093,000698: 30,3020 77776 EXIT
037094,000699: 30,3021 07225 TC POLY
037095,000700: 30,3022 00006 DEC 6 B-14
037096,000701: 30,3023 00000 00002 2DEC .0000000060
037097,000702:
037098,000703: 30,3025 76777 77175 2DEC -.0312514377
037099,000704:
037100,000705: 30,3027 77400 75416 2DEC -.0155686771
037101,000706:
037102,000707: 30,3031 77507 65515 2DEC -.0112502068
037103,000708:
037104,000709: 30,3033 77741 63547 2DEC -.0018545108
037105,000710:
037106,000711: 30,3035 77052 55373 2DEC -.0286607906
037107,000712:
037108,000713: 30,3037 01167 30361 2DEC .0385598563
037109,000714:
037110,000715: 30,3041 76520 75267 2DEC -.0419361902
037111,000716:
037112,000717: 30,3043 34755 CAF ZERO
037113,000718: 30,3044 54156 TS MPAC +2
037114,000719: 30,3045 00006 EXTEND
037115,000720: 30,3046 33062 DCA CLOG2/32
037116,000721: 30,3047 52155 DXCH MPAC
037117,000722: 30,3050 52132 DXCH BUF +1
037118,000723: 30,3051 30162 CA MPAC +6
037119,000724: 30,3052 07312 TC SHORTMP
037120,000725: 30,3053 52156 DXCH MPAC +1
037121,000726: 30,3054 52155 DXCH MPAC
037122,000727: 30,3055 52132 DXCH BUF +1
037123,000728: 30,3056 20155 DAS MPAC
037124,000729: 30,3057 06042 TC INTPRET
037125,000730: 30,3060 43476 DCOMP RVQ
037126,000731:
037127,000732: 30,3061 00542 34414 CLOG2/32 2DEC .0216608494
037128,000733:
End of include-file ASCENT_GUIDANCE.agc. Parent file is MAIN.agc