Source Code
034760,000001: # Copyright: Public domain.
034761,000002: # Filename: P70-P71.agc
034762,000003: # Purpose: A section of Luminary 1C, revision 131.
034763,000004: # It is part of the source code for the Lunar Module's (LM)
034764,000005: # Apollo Guidance Computer (AGC) for Apollo 13 and Apollo 14.
034765,000006: # This file is intended to be a faithful transcription, except
034766,000007: # that the code format has been changed to conform to the
034767,000008: # requirements of the yaYUL assembler rather than the
034768,000009: # original YUL assembler.
034769,000010: # Reference: pp. 828-835 of 1729.pdf.
034770,000011: # Contact: Ron Burkey <info@sandroid.org>.
034771,000012: # Website: www.ibiblio.org/apollo
034772,000013: # Mod history: 05/26/03 RSB. Began transcribing.
034773,000014:
034774,000015: # Page 828
034775,000016: 21,2006 BANK 21
034776,000017: 21,2000 SETLOC R11
034777,000018: 21,2000 BANK
034778,000019:
034779,000020: 21,2006 E7,1515 EBANK= DVCNTR
034780,000021: 21,2006 COUNT* $$/R11
034781,000022:
034782,000023: 21,2006 40103 R10,R11 CS FLAGWRD7 # IS SERVICER STILL RUNNING?
034783,000024: 21,2007 74747 MASK AVEGFBIT
034784,000025: 21,2010 10000 CCS A
034785,000026: 21,2011 15261 TCF TASKOVER # LET AVGEND TAKE CARE OF GROUP 2.
034786,000027: 21,2012 11055 CCS PIPCTR
034787,000028: 21,2013 12015 TCF +2
034788,000029: 21,2014 12125 TCF LRHTASK # LAST PASS. CALL LRHTASK.
034789,000030: 21,2015 55714 +2 TS PIPCTR1
034790,000031:
034791,000032: 21,2016 E7,1714 PIPCTR1 = LADQSAVE
034792,000033: 21,2016 1055 PIPCTR = PHSPRDT2
034793,000034: 21,2016 36010 CAF OCT31
034794,000035: 21,2017 05173 TC TWIDDLE
034795,000036: 21,2020 02006 ADRES R10,R11
034796,000037: 21,2021 34753 R10,R11A CAF HFLSHBIT
034797,000038: 21,2022 70107 FLASHH? MASK FLGWRD11
034798,000039: 21,2023 00006 EXTEND
034799,000040: 21,2024 12030 BZF FLASHV? # H FLASH OFF, SO LEAVE ALONE
034800,000041:
034801,000042: 21,2025 34747 CA HLITE
034802,000043: 21,2026 54001 TS L
034803,000044: 21,2027 04606 TC FLIP # FLIP H LITE
034804,000045:
034805,000046: 21,2030 34752 FLASHV? CA VFLSHBIT # VLASHBIT MUST BE BIT 2.
034806,000047: 21,2031 70107 MASK FLGWRD11
034807,000048: 21,2032 00006 EXTEND
034808,000049: 21,2033 12037 BZF 10,11 # VFLASH OFF
034809,000050:
034810,000051: 21,2034 34751 CA VLITE
034811,000052: 21,2035 54001 TS L
034812,000053: 21,2036 04606 TC FLIP # FLIP V LITE
034813,000054:
034814,000055: 21,2037 30105 10,11 CA FLAGWRD9 # IS THE LETABORT FLAG SET ?
034815,000056: 21,2040 74743 MASK LETABBIT
034816,000057: 21,2041 00006 EXTEND
034817,000058: 21,2042 12145 BZF LANDISP # NO. PROCEED TO R10.
034818,000059:
034819,000060: 21,2043 41010 P71NOW? CS MODREG # YES. ARE WE IN P71 NOW?
034820,000061: 21,2044 62104 AD 1DEC71
034821,000062: 21,2045 00006 EXTEND
034822,000063: 21,2046 12145 BZF LANDISP # YES. PROCEED TO R10.
034823,000064: # Page 829
034824,000065: 21,2047 00006 EXTEND # NO. IS AN ABORT STAGE COMMANDED?
034825,000066: 21,2050 00030 READ CHAN30
034826,000067: 21,2051 40000 COM
034827,000068: 21,2052 54001 TS L
034828,000069: 21,2053 74750 MASK BIT4
034829,000070: 21,2054 10000 CCS A
034830,000071: 21,2055 12073 TCF P71A # YES.
034831,000072:
034832,000073: 21,2056 41010 P70NOW? CS MODREG # NO. ARE WE IN P70 NOW?
034833,000074: 21,2057 62103 AD 1DEC70
034834,000075: 21,2060 00006 EXTEND
034835,000076: 21,2061 12145 BZF LANDISP # YES. PROCEED TO R10.
034836,000077:
034837,000078: 21,2062 30001 CA L # NO. IS AN ABORT COMMANDED?
034838,000079: 21,2063 74753 MASK BIT1
034839,000080: 21,2064 10000 CCS A
034840,000081: 21,2065 12070 TCF P70A # YES.
034841,000082: 21,2066 12145 TCF LANDISP # NO. PROCEED TO R10.
034842,000083:
034843,000084: 21,2067 COUNT* $$/P70
034844,000085:
034845,000086: 21,2067 02105 P70 TC LEGAL?
034846,000087: 21,2070 44755 P70A CS ZERO
034847,000088: 21,2071 12074 TCF +3
034848,000089: 21,2072 02105 P71 TC LEGAL?
034849,000090: 21,2073 34752 P71A CAF TWO
034850,000091: 21,2074 54002 +3 TS Q
034851,000092: 21,2075 00004 INHINT
034852,000093: 21,2076 00006 EXTEND
034853,000094: 21,2077 32102 DCA CNTABTAD
034854,000095: 21,2100 52006 DTCB
034855,000096:
034856,000097: 21,2101 E7,1515 EBANK= DVCNTR
034857,000098: 21,2101 03413 12067 CNTABTAD 2CADR CONTABRT
034858,000099:
034859,000100: 21,2103 00106 1DEC70 DEC 70 B-14
034860,000101: 21,2104 00107 1DEC71 DEC 71 B-14
034861,000102:
034862,000103: 05,3413 BANK 05
034863,000104: 05,2000 SETLOC ABORTS1
034864,000105: 05,2000 BANK
034865,000106: 05,3413 COUNT* $$/P70
034866,000107:
034867,000108: 05,3413 33416 CONTABRT CAF ABRTJADR
034868,000109: 05,3414 54017 TS BRUPT
034869,000110: 05,3415 50017 RESUME
034870,000111:
034871,000112: 05,3416 13417 ABRTJADR TCF ABRTJASK
034872,000113: 05,3417 33477 ABRTJASK CAF OCTAL27
034873,000114:
034874,000115: # Page 830
034875,000116: 05,3420 60002 AD Q
034876,000117: 05,3421 54001 TS L
034877,000118: 05,3422 40000 COM
034878,000119: 05,3423 52760 DXCH -PHASE4
034879,000120: 05,3424 50002 INDEX Q
034880,000121: 05,3425 33476 CAF MODE70
034881,000122: 05,3426 55010 TS MODREG
034882,000123:
034883,000124: 05,3427 55162 TS DISPDEX # INSURE DISPDEX IS POSITIVE.
034884,000125:
034885,000126: 05,3430 10002 CCS Q # SET APSFLAG IF P71.
034886,000127: 05,3431 40106 CS FLGWRD10 # SET APSFLAG PRIOR TO THE ENEMA.
034887,000128: 05,3432 74737 MASK APSFLBIT
034888,000129: 05,3433 26106 ADS FLGWRD10
034889,000130: 05,3434 43501 CS DAPBITS # DAPBITS = OCT 40640 = BITS 6,8,9,15
034890,000131: 05,3435 70111 MASK DAPBOOLS # RESET ULLAGE,DRIVT,XOVR11MM, AND PULSES
034891,000132: 05,3436 54111 TS DAPBOOLS
034892,000133:
034893,000134: 05,3437 33502 CAF 1DEGDB # INSURE DAP DEADBAND IS SET TO 1 DEGREE
034894,000135: 05,3440 55343 TS DB
034895,000136:
034896,000137: 05,3441 40101 CS FLAGWRD5 # SET ENGONFLG.
034897,000138: 05,3442 74745 MASK ENGONBIT
034898,000139: 05,3443 26101 ADS FLAGWRD5
034899,000140:
034900,000141: 05,3444 44355 CS PRIO30 # INSURE THAT THE ENGINE IS ON, IF ARMED.
034901,000142: 05,3445 00006 EXTEND
034902,000143: 05,3446 02011 RAND DSALMOUT
034903,000144: 05,3447 64737 AD BIT13
034904,000145: 05,3450 00006 EXTEND
034905,000146: 05,3451 01011 WRITE DSALMOUT
034906,000147:
034907,000148: 05,3452 34735 CAF LRBYBIT # TERMINATE R12.
034908,000149: 05,3453 54107 TS FLGWRD11
034909,000150:
034910,000151: 05,3454 40074 CS FLAGWRD0 # SET R10FLAG TO SUPPRESS OUTPUTS TO THE
034911,000152: 05,3455 74752 MASK R10FLBIT # CROSS-POINTER DISPLAY.
034912,000153: 05,3456 26074 ADS FLAGWRD0 # THE FOLLOWING ENEMA WILL REMOVE THE
034913,000154: # DISPLAY INERTIAL DATA OUTBIT.
034914,000155:
034915,000156: 05,3457 00006 EXTEND # LOAD TEVENT FOR THE DOWNLINK.
034916,000157: 05,3460 30025 DCA TIME2
034917,000158: 05,3461 53342 DXCH TEVENT
034918,000159:
034919,000160: 05,3462 00006 EXTEND
034920,000161: 05,3463 33475 DCA SVEXITAD
034921,000162: 05,3464 53252 DXCH AVGEXIT
034922,000163:
034923,000164: 05,3465 02653 TC ABTKLEAN # KILL GROUPS 1,3, AND 6.
034924,000165: # Page 831
034925,000166: 05,3466 36250 CAF THREE # SET UP 4.3SPOT FOR GOABORT
034926,000167: 05,3467 54001 TS L
034927,000168: 05,3470 40000 COM
034928,000169: 05,3471 52760 DXCH -PHASE4
034929,000170:
034930,000171: 05,3472 04635 TC POSTJUMP
034931,000172: 05,3473 12763 CADR ENEMA
034932,000173:
034933,000174: 05,3474 E7,1515 EBANK= DVCNTR
034934,000175: 05,3474 03746 64067 SVEXITAD 2CADR SERVEXIT
034935,000176:
034936,000177: 05,3476 00106 MODE70 DEC 70 B-14
034937,000178: 05,3477 00027 OCTAL27 OCT 27
034938,000179: 05,3500 00107 MODE71 DEC 71 B-14
034939,000180:
034940,000181: 05,3501 40640 DAPBITS OCT 40640
034941,000182:
034942,000183: 05,3502 00554 1DEGDB OCT 00554
034943,000184: 32,3533 BANK 32
034944,000185: 32,2000 SETLOC ABORTS
034945,000186: 32,2000 BANK
034946,000187:
034947,000188: 32,3533 COUNT* $$/P70
034948,000189:
034949,000190: 32,3533 34751 GOABORT CAF FOUR
034950,000191: 32,3534 55515 TS DVCNTR
034951,000192:
034952,000193: 32,3535 33743 CAF WHICHADR
034953,000194: 32,3536 55455 TS WHICH
034954,000195:
034955,000196: 32,3537 06042 TC INTPRET
034956,000197: 32,3540 43014 CLEAR CLEAR
034957,000198: 32,3541 04665 FLRCS
034958,000199: 32,3542 04265 FLUNDISP
034959,000200: 32,3543 43014 CLEAR SET
034960,000201: 32,3544 03670 IDLEFLAG
034961,000202: 32,3545 06464 ACC4-2FL
034962,000203: 32,3546 45014 SET CALL
034963,000204: 32,3547 04462 P7071FLG
034964,000205: 32,3550 61071 INITCDUW
034965,000206: 32,3551 77776 EXIT
034966,000207:
034967,000208: 32,3552 05321 TC CHECKMM
034968,000209: 32,3553 00106 70DEC DEC 70 B-14
034969,000210: 32,3554 13667 TCF P71RET
034970,000211:
034971,000212: 32,3555 06042 P70INIT TC INTPRET
034972,000213: 32,3556 77624 CALL
034973,000214: 32,3557 65716 TGOCOMP
034974,000215: 32,3560 54345 DLOAD SL
034975,000216: # Page 832
034976,000217: 32,3561 34003 MDOTDPS
034977,000218: 32,3562 20205 4D
034978,000219: 32,3563 77665 BDDV
034979,000220: 32,3564 01244 MASS
034980,000221: 32,3565 16271 STODL TBUP
034981,000222: 32,3566 01244 MASS
034982,000223: 32,3567 70471 DDV SR1
034983,000224: 32,3570 16015 K(1/DV)
034984,000225: 32,3571 03635 STORE 1/DV1
034985,000226: 32,3572 03637 STORE 1/DV2
034986,000227: 32,3573 03641 STORE 1/DV3
034987,000228: 32,3574 77665 BDDV
034988,000229: 32,3575 25742 K(AT)
034989,000230: 32,3576 16263 STODL AT
034990,000231: 32,3577 34015 100PCTTO
034991,000232: 32,3600 02267 STORE TTO
034992,000233: 32,3601 57535 SLOAD DCOMP
034993,000234: 32,3602 26002 DPSVEX
034994,000235: 32,3603 77702 SR2
034995,000236: 32,3604 36265 STCALL VE
034996,000237: 32,3605 60275 COMMINIT
034997,000238: 32,3606 77745 INJTARG DLOAD
034998,000239: 32,3607 02567 ABTRDOT
034999,000240: 32,3610 36273 STCALL RDOTD # INITIALZE ROOTD.
035000,000241: 32,3611 57313 YCOMP # COMPUTE Y
035001,000242: 32,3612 45246 ABS DSU
035002,000243: 32,3613 02565 YLIM # /Y/-DYMAX
035003,000244: 32,3614 75240 BMN SIGN # IF <0, XR<.5DEG, LEAVE YCO AT 0
035004,000245: 32,3615 65620 YOK # IF >0, FIX SIGN OF DEFICIT. THIS IS YCO.
035005,000246: 32,3616 02335 Y
035006,000247: 32,3617 03633 STORE YCO
035007,000248: 32,3620 45345 YOK DLOAD DSU
035008,000249: 32,3621 03633 YCO
035009,000250: 32,3622 02335 Y
035010,000251: 32,3623 77661 SR
035011,000252: 32,3624 20606 5D
035012,000253: 32,3625 03643 STORE XRANGE
035013,000254: 32,3626 45014 SET CALL
035014,000255: 32,3627 04461 FLVR
035015,000256: 32,3630 71554 THETCOMP
035016,000257: 32,3631 51025 DSU BPL
035017,000258: 32,3632 02561 THETCRIT
035018,000259: 32,3633 65637 +4
035019,000260: 32,3634 52175 VLOAD GOTO
035020,000261: 32,3635 02551 J1PARM
035021,000262: 32,3636 65642 STORPARM
035022,000263: 32,3637 43175 +4 VLOAD SET # IF J2 IS USED, SET THE
035023,000264: 32,3640 02555 J2PARM # ABORT TARGETING FLAG
035024,000265: 32,3641 04470 ABTTGFLG
035025,000266: 32,3642 16621 STORPARM STODL JPARM
035026,000267: # Page 833
035027,000268: 32,3643 03631 RCO
035028,000269: 32,3644 02625 STORE RP
035029,000270: 32,3645 77414 SET EXIT
035030,000271: 32,3646 04471 ROTFLAG
035031,000272:
035032,000273: 32,3647 03725 UPTHROT TC THROTUP
035033,000274:
035034,000275: 32,3650 05353 TC PHASCHNG
035035,000276: 32,3651 04024 OCT 04024
035036,000277:
035037,000278: 32,3652 05504 TC UPFLAG
035038,000279: 32,3653 00216 ADRES FLAP
035039,000280:
035040,000281: 32,3654 04616 UPTHROT1 TC BANKCALL # VERIFY THAT THE PANEL SWITCHES
035041,000282: 32,3655 73707 CADR P40AUTO # ARE PROPERLY SET.
035042,000283:
035043,000284: 32,3656 03725 TC THROTUP
035044,000285:
035045,000286: 32,3657 35027 CAF PRIO17 # LET SERVICER FINISH BEFORE CONNECTING
035046,000287: 32,3660 05146 TC PRIOCHNG # ASCENT GUIDANCE EQUATIONS.
035047,000288:
035048,000289: 32,3661 00006 EXTEND
035049,000290: 32,3662 33745 DCA ATMAGAD
035050,000291: 32,3663 53252 DXCH AVGEXIT
035051,000292:
035052,000293: 32,3664 05353 GRP4OFF TC PHASCHNG # TERMINATE USE OF GROUP 4.
035053,000294: 32,3665 00004 OCT 00004
035054,000295:
035055,000296: 32,3666 15155 TCF ENDOFJOB
035056,000297:
035057,000298: 32,3667 05516 P71RET TC DOWNFLAG
035058,000299: 32,3670 00215 ADRES LETABORT
035059,000300:
035060,000301: 32,3671 36000 CAF THRESH2 # SET DVMON THRESHOLD TO THE ASCENT VALUE.
035061,000302: 32,3672 55250 TS DVTHRUSH
035062,000303:
035063,000304: 32,3673 06042 TC INTPRET
035064,000305: 32,3674 77624 CALL
035065,000306: 32,3675 60251 P12INIT
035066,000307: 32,3676 45014 BON CALL
035067,000308: 32,3677 04707 FLAP
035068,000309: 32,3700 65704 OLDTIME
035069,000310: 32,3701 65716 TGOCOMP # IF FLAP=0, TGO=T-TIG
035070,000311: 32,3702 77650 GOTO
035071,000312: 32,3703 65606 INJTARG
035072,000313: 32,3704 72545 OLDTIME DLOAD SL1 # IF FLAP=1,GTO=2 TGO
035073,000314: 32,3705 03517 TGO
035074,000315: 32,3706 03502 STORE TGO1
035075,000316: 32,3707 77776 EXIT
035076,000317:
035077,000318: # Page 834
035078,000319: 32,3710 05353 TC PHASCHNG
035079,000320: 32,3711 04024 OCT 04024
035080,000321:
035081,000322: 32,3712 00006 EXTEND
035082,000323: 32,3713 31502 DCA TGO1
035083,000324: 32,3714 53517 DXCH TGO
035084,000325: 32,3715 13654 TCF UPTHROT1
035085,000326:
035086,000327: 32,3716 E7,1501 TGO1 = VGBODY
035087,000328:
035088,000329: # *************************************************************************
035089,000330:
035090,000331: 21,2105 BANK 21
035091,000332: 21,2000 SETLOC R11
035092,000333: 21,2000 BANK
035093,000334: 21,2105 COUNT* $$/P70
035094,000335:
035095,000336: 21,2105 40774 LEGAL? CS MMNUMBER # IS THE DESIRED PGM ALREADY IN PROGRESS?
035096,000337: 21,2106 61010 AD MODREG
035097,000338: 21,2107 00006 EXTEND
035098,000339: 21,2110 12121 BZF ABORTALM
035099,000340:
035100,000341: 21,2111 40105 CS FLAGWRD9 # ARE THE ABORTS ENABLED?
035101,000342: 21,2112 74743 MASK LETABBIT
035102,000343: 21,2113 10000 CCS A
035103,000344: 21,2114 12121 TCF ABORTALM
035104,000345:
035105,000346: 21,2115 30103 CA FLAGWRD7 # IS SERVICER ON THE A1R7
035106,000347: 21,2116 74747 MASK AVEGFBIT
035107,000348: 21,2117 10000 CCS A
035108,000349: 21,2120 00002 TC Q # YES. ALL IS WELL.
035109,000350: 21,2121 04364 ABORTALM TC FALTON
035110,000351: 21,2122 04457 TC RELDSP
035111,000352: 21,2123 04635 TC POSTJUMP
035112,000353: 21,2124 21051 CADR PINBRNCH
035113,000354:
035114,000355: 32,3716 BANK 32
035115,000356: 32,2000 SETLOC ABORTS
035116,000357: 32,2000 BANK
035117,000358:
035118,000359: 32,3716 COUNT* $$/P70
035119,000360:
035120,000361: # **********************************************************************
035121,000362:
035122,000363: 32,3716 45234 TGOCOMP RTB DSU
035123,000364: 32,3717 21574 LOADTIME
035124,000365: 32,3720 03442 TIG
035125,000366: 32,3721 77661 SL
035126,000367: 32,3722 20214 11D
035127,000368: 32,3723 03517 STORE TGO
035128,000369: # Page 835
035129,000370: 32,3724 77616 RVQ
035130,000371:
035131,000372: # ************************************************************************
035132,000373:
035133,000374: 32,3725 34737 THROTUP CAF BIT13
035134,000375: 32,3726 54055 TS THRUST
035135,000376: 32,3727 34750 CAF BIT4
035136,000377: 32,3730 00006 EXTEND
035137,000378: 32,3731 05014 WOR CHAN14
035138,000379: 32,3732 00002 TC Q
035139,000380:
035140,000381: # ************************************************************************
035141,000382:
035142,000383: 32,3733 00000 01750 10SECS 2DEC 1000 B-28
035143,000384: 32,3735 00021 33400 HINJECT 2DEC 18288 B-24 # 60,000 FEET EXPRESSED IN METERS.
035144,000385: 32,3737 11021 00000 (TGO)A 2DEC 37000 B-17
035145,000386: 32,3741 00507 25605 K(AT) 2DEC .02 # SCALING CONSTANT
035146,000387: 32,3743 02114 WHICHADR REMADR ABRTABLE
035147,000388:
035148,000389: # ************************************************************************
035149,000390:
035150,000391: 32,3744 E7,1515 EBANK= DVCNTR
035151,000392: 32,3744 03372 70067 ATMAGAD 2CADR ATMAG
End of include-file P70-P71.agc. Parent file is MAIN.agc