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