Source Code
|
These source-code files are part of a reconstructed copy of Comanche 051, the
original release of the Apollo 11 Command Module (CM) Apollo Guidance Computer
(AGC) software.
The reconstruction began with source code of Comanche 055 previously transcribed from a digitized copy of that program. The code was then updated by undoing changes related to the R-2 lunar potential model, using hints from program comments and change-indicating asterisks in the Comanche 055 listing as a guide. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021153D. Note that page numbers in the reconstructed code match those on the Comanche 055 printout, although the added code would likely have changed page numbers for a real Comanche 051 listing. 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. |
057913,000002: ## Copyright: Public domain.
057914,000003: ## Filename: POWERED_FLIGHT_SUBROUTINES.agc
057915,000004: ## Purpose: A section of Comanche revision 051.
057916,000005: ## It is part of the reconstructed source code for the
057917,000006: ## original release of the flight software for the Command
057918,000007: ## Module's (CM) Apollo Guidance Computer (AGC) for Apollo 11.
057919,000008: ## The code has been recreated from a copy of Comanche 055. It
057920,000009: ## has been adapted such that the resulting bugger words
057921,000010: ## exactly match those specified for Comanche 51 in NASA drawing
057922,000011: ## 2021153D, which gives relatively high confidence that the
057923,000012: ## reconstruction is correct.
057924,000013: ## Reference: pp. 1365-1372
057925,000014: ## Assembler: yaYUL
057926,000015: ## Contact: Ron Burkey <info@sandroid.org>.
057927,000016: ## Website: www.ibiblio.org/apollo/index.html
057928,000017: ## Mod history: 2019-07-30 MAS Created from Comanche 55.
057929,000018:
|
Page 1365 |
057931,000020: 14,3422 BANK 14 # SAME FBANK AS THE FINDCDUD SUB-PROGRAM
057932,000021: 23,2000 SETLOC POWFLITE
057933,000022: 23,2000 BANK
057934,000023:
057935,000024: 23,3477 0142 EBANK= DEXDEX
057936,000025: 23,3477 COUNT* $$/POWFL
057937,000026:
057938,000027: # CDUTRIG, CDUTRIG1, CDUTRIG2, AND CD*TR*GS ALL COMPUTE THE SINES AND
057939,000028: # COSINES OF THREE 2'S COMPLEMENT ANGLES AND PLACE THE RESULT, DOUBLE
057940,000029: # PRECISION, IN THE SAME ORDER AS THE INPUTS, AT SINCDU AND COSCDU. AN
057941,000030: # ADDITIONAL OUTPUT IS THE 1'S COMPLEMENT ANGLES AT CDUSPOT. THESE
057942,000031: # ROUTINES GO OUT OF THEIR WAY TO LEAVE THE MPAC AREA AS THEY FIND IT,
057943,000032: # EXCEPT FOR THE GENERALLY UNIMPORTANT MPAC +2. THEY DIFFER ONLY IN
057944,000033: # WHERE THEY GET THE ANGLES, AND IN METHOD OF CALLING.
057945,000034:
057946,000035: # CDUTRIG (AND CDUTRIG1, WHICH CAN BE CALLED IN BASIC) COMPUTE THE
057947,000036: # SINES AND COSINES FROM THE CURRENT CONTENTS OF THE CDU REGISTERS.
057948,000037: # THE CONTENTS OF CDUTEMP, ETC., ARE NOT TOUCHED SO THAT THEY MAY
057949,000038: # CONTINUE TO FORM A CONSISTENT SET WITH THE LATEST PIPA READINGS.
057950,000039:
057951,000040: # CDUTRIG1 IS LIKE CDUTRIG EXCEPT THAT IT CAN BE CALLED IN BASIC.
057952,000041:
057953,000042: # CD*TR*GS FINDS CDU VALUES IN CDUSPOT RATHER THAN IN CDUTEMP. THIS
057954,000043: # ALLOWS USERS TO MAKE TRANSFORMATIONS USING ARBITRARY ANGLES, OR REAL
057955,000044: # ANGLES IN AN ORDER OTHER THAN X Y Z. A CALL TO THIS ROUTINE IS
057956,000045: # NECESSARY IN PREPARATION FOR A CALL TO AX*SR*T IN EITHER OF ITS TWO
057957,000046: # MODES (SMNB OR NBSM). SINCE AX*SR*T EXPECTS TO FIND THE SINES AND
057958,000047: # COSINES IN THE ORDER Y Z X THE ANGLES MUST HAVE BEEN PLACED IN CDUSPOT
057959,000048: # IN THIS ORDER. CD*TR*GS NEED NOT BE REPEATED WHEN AX*SR*T IS CALLED
057960,000049: # MORE THAN ONCE, PROVIDED THE ANGLES HAVE NOT CHANGED. NOTE THAT SINCE
057961,000050: # IT CLOBBERS BUF2 (IN THE SINE AND COSINE ROUTINES) CD*TR*GS CANNOT BE
057962,000051: # CALLED USING BANKCALL. SORRY.
057963,000052:
057964,000053: # CD*TR*G IS LIKE CD*TR*GS EXCEPT THAT IT CAN BE CALLED IN
057965,000054: # INTERPRETIVE.
057966,000055:
057967,000056: 23,3477 77776 CDUTRIG EXIT
057968,000057: 23,3500 03507 TC CDUTRIGS
057969,000058: 23,3501 06006 TC INTPRET
057970,000059: 23,3502 77616 RVQ
057971,000060:
057972,000061: 23,3503 77776 CD*TR*G EXIT
057973,000062: 23,3504 03515 TC CD*TR*GS
057974,000063: 23,3505 06006 TC INTPRET
057975,000064: 23,3506 77616 RVQ
057976,000065:
057977,000066: 23,3507 30032 CDUTRIGS CA CDUX
057978,000067: 23,3510 54772 TS CDUSPOT +4
057979,000068: 23,3511 30033 CA CDUY
057980,000069: 23,3512 54766 TS CDUSPOT
|
Page 1366 |
057982,000071: 23,3513 30034 CA CDUZ
057983,000072: 23,3514 54770 TS CDUSPOT +2
057984,000073:
057985,000074: 23,3515 00006 CD*TR*GS EXTEND
057986,000075: 23,3516 22142 QXCH TEM2
057987,000076: 23,3517 35015 CAF FOUR
057988,000077: 23,3520 76211 TR*GL**P MASK SIX # MAKE IT EVEN AND SMALLER
057989,000078: 23,3521 54143 TS TEM3
057990,000079: 23,3522 50143 INDEX TEM3
057991,000080: 23,3523 30766 CA CDUSPOT
057992,000081: 23,3524 52155 DXCH MPAC # STORING 2'S COMP ANGLE, LOADING MPAC
057993,000082: 23,3525 52127 DXCH VBUF +4 # STORING MPAC FOR LATER RESTORATION
057994,000083: 23,3526 04757 TC USPRCADR
057995,000084: 23,3527 45513 CADR CDULOGIC
057996,000085: 23,3530 00006 EXTEND
057997,000086: 23,3531 30155 DCA MPAC
057998,000087: 23,3532 50143 INDEX TEM3
057999,000088: 23,3533 52767 DXCH CDUSPOT # STORING 1'S COMPLEMENT ANGLE
058000,000089: 23,3534 04757 TC USPRCADR
058001,000090: 23,3535 01516 CADR COSINE
058002,000091: 23,3536 52155 DXCH MPAC
058003,000092: 23,3537 50143 INDEX TEM3
058004,000093: 23,3540 52745 DXCH COSCDU # STORING COSINE
058005,000094: 23,3541 00006 EXTEND
058006,000095: 23,3542 50143 INDEX TEM3
058007,000096: 23,3543 30767 DCA CDUSPOT # LOADING 1'S COMPLEMENT ANGLE
058008,000097: 23,3544 04757 TC USPRCADR
058009,000098: 23,3545 01530 CADR SINE +1 # SINE +1 EXPECTS ARGUMENT IN A AND L
058010,000099: 23,3546 52127 DXCH VBUF +4 # BRINGING UP PRIOR MPAC TO BE RESTORED
058011,000100: 23,3547 52155 DXCH MPAC
058012,000101: 23,3550 50143 INDEX TEM3
058013,000102: 23,3551 52737 DXCH SINCDU
058014,000103: 23,3552 10143 CCS TEM3
058015,000104: 23,3553 13520 TCF TR*GL**P
058016,000105: 23,3554 00142 TC TEM2
|
Page 1367 |
058018,000107: # ****************************************************************************************************************
058019,000108: # QUICTRIG, INTENDED FOR GUIDANCE CYCLE USE WHERE TIME IS CRITICAL, IS A MUCH FASTER VERSION OF CD*TR*GS.
058020,000109: # QUICTRIG COMPUTES AND STORES THE SINES AND COSINES OF THE 2'S COMPLEMENT ANGLES AT CDUSPOT, CDUSPOT +2,
058021,000110: # AND CDUSPOT +4. UNLIKE CD*TR*GS, QUICTRIG DOES NOT LEAVE THE 1'S COMPLEMENT VERSIONS OF THE ANGLES IN
058022,000111: # CDUSPOT. QUICTRIG'S EXECUTION TIME IS 4.1 MS; THIS IS 10 TIMES AS FAST AS CD*TR*GS. QUICTRIG MAY BE
058023,000112: # CALLED FROM INTERPRETIVE AS AN RTB OP-CODE, OR FROM BASIC VIA BANKCALL OR IBNKCALL.
058024,000113:
058025,000114: 23,3555 00004 QUICTRIG INHINT # INHINT SINCE DAP USES THE SAME TEMPS
058026,000115: 23,3556 00006 EXTEND
058027,000116: 23,3557 22061 QXCH ITEMP1
058028,000117: 23,3560 35015 CAF FOUR
058029,000118: 23,3561 76211 +4 MASK SIX
058030,000119: 23,3562 54062 TS ITEMP2
058031,000120: 23,3563 50062 INDEX ITEMP2
058032,000121: 23,3564 30766 CA CDUSPOT
058033,000122: 23,3565 05075 TC SPSIN
058034,000123: 23,3566 00006 EXTEND
058035,000124: 23,3567 75002 MP BIT14 # SCALE DOWN TO MATCH INTERPRETER OUTPUTS
058036,000125: 23,3570 50062 INDEX ITEMP2
058037,000126: 23,3571 52737 DXCH SINCDU
058038,000127: 23,3572 50062 INDEX ITEMP2
058039,000128: 23,3573 30766 CA CDUSPOT
058040,000129: 23,3574 05074 TC SPCOS
058041,000130: 23,3575 00006 EXTEND
058042,000131: 23,3576 75002 MP BIT14
058043,000132: 23,3577 50062 INDEX ITEMP2
058044,000133: 23,3600 52745 DXCH COSCDU
058045,000134: 23,3601 10062 CCS ITEMP2
058046,000135: 23,3602 13561 TCF QUICTRIG +4
058047,000136: 23,3603 30061 CA ITEMP1
058048,000137: 23,3604 00003 RELINT
058049,000138: 23,3605 00000 TC A
|
Page 1368 |
058051,000140: # ****************************************************************************************************************
058052,000141: # THESE INTERFACE ROUTINES MAKE IT POSSIBLE TO CALL AX*SR*T, ETC., IN
058053,000142: # INTERPRETIVE. LATER, WHERE POSSIBLE, THEY WILL BE ELIMINATED.
058054,000143:
058055,000144: # NBSM WILL BE THE FIRST TO GO. IT SHOULD NOT BE USED.
058056,000145:
058057,000146: 23,3606 77620 NBSM STQ
058058,000147: 23,3607 00047 X2
058059,000148: 23,3610 76740 LXC,1 VLOAD*
058060,000149: 23,3611 00050 S1 # BASE ADDRESS OF THE CDU ANGLES IS IN S1
058061,000150: 23,3612 00001 0,1
058062,000151: 23,3613 24767 STOVL CDUSPOT
058063,000152: 23,3614 00041 32D # VECTOR TO BE TRANSFORMED IS IN 32D
058064,000153: 23,3615 77624 CALL
058065,000154: 23,3616 47637 TRG*NBSM
058066,000155: 23,3617 34041 STCALL 32D # SINCE THERE'S NO STGOTO
058067,000156: 23,3620 00047 X2
058068,000157:
058069,000158: # THESE INTERFACE ROUTINES ARE PERMANENT. ALL RESTORE USER'S EBANK
058070,000159: # SETTING. ALL ARE STRICT INTERPRETIVE SUBROUTINES, CALLED USING "CALL",
058071,000160: # RETURNING VIA QPRET. ALL EXPECT AND RETURN THE VECTOR TO BE TRANSFOR-
058072,000161: # MED INTERPRETER-STYLE IN MPAC; COMPONENTS AT MPAC, MPAC +3, AND MPAC +5.
058073,000162:
058074,000163: # TRG*SMNB AND TRG*NBSM BOTH EXPECT TO SEE THE 2'S COMPLEMENT ANGLES
058075,000164: # AT CDUSPOT (ORDER Y Z X, AT CDUSPOT, CDUSPOT +2, AND CDUSPOT +4; ODD
058076,000165: # LOCATIONS NEED NOT BE ZEROED). TRG*NBSM DOES THE NB TO SM TRANSFOR-
058077,000166: # MATION; TRG*SMNB, VICE VERSA.
058078,000167:
058079,000168: # CDU*NBSM DOES ITS TRANSFORMATION USING THE PRESENT CONTENTS OF
058080,000169: # THE CDU COUNTERS. OTHERWISE IT IS LIKE TRG*NBSM.
058081,000170:
058082,000171: # CDU*SMNB IS THE COMPLEMENT OF CDU*NBSM.
058083,000172:
058084,000173: 23,3621 77776 CDU*SMNB EXIT
058085,000174: 23,3622 03507 TC CDUTRIGS
058086,000175: 23,3623 13626 TCF C*MM*N1
058087,000176:
058088,000177: 23,3624 77776 TRG*SMNB EXIT
058089,000178: 23,3625 03515 TC CD*TR*GS
058090,000179: 23,3626 07501 C*MM*N1 TC MPACVBUF # AX*SR*T EXPECTS VECTOR IN VBUF
058091,000180: 23,3627 46214 CS THREE # SIGNAL FOR SM TO NB TRANSFORMATION
058092,000181: 23,3630 03650 C*MM*N2 TC AX*SR*T
058093,000182: 23,3631 06006 TC INTPRET
058094,000183: 23,3632 43575 VLOAD RVQ
058095,000184: 23,3633 00123 VBUF
058096,000185:
058097,000186: 23,3634 77776 CDU*NBSM EXIT
058098,000187: 23,3635 03507 TC CDUTRIGS
058099,000188:
|
Page 1369 |
058101,000190:
058102,000191: 23,3636 13641 TCF C*MM*N3
058103,000192:
058104,000193: 23,3637 77776 TRG*NBSM EXIT
058105,000194: 23,3640 03515 TC CD*TR*GS
058106,000195: 23,3641 07501 C*MM*N3 TC MPACVBUF # FOR AX*SR*T
058107,000196: 23,3642 36214 CA THREE # SIGNAL FOR NB TO SM TRANSFORMATION
058108,000197: 23,3643 13630 TCF C*MM*N2
058109,000198:
058110,000199: # *NBSM* AND *SMNB* EXPECT TO SEE THE SINES AND COSINES (AT SINCDU
058111,000200: # AND COSCDU) RATHER THAN THE ANGLES THEMSELVES. OTHERWISE THEY ARE
058112,000201: # LIKE TRG*NBSM AND TRG*SMNB.
058113,000202:
058114,000203: # NOTE THAT JUST AS CD*TR*GS NEED BE CALLED ONLY ONCE FOR EACH SERIES
058115,000204: # OF TRANSFORMATIONS USING THE SAME ANGLES, SO TOO ONLY ONE OF TRG*NBSM
058116,000205: # AND TRG*SMNB NEED BE CALLED FOR EACH SERIES. FOR SUBSEQUENT TRANSFOR-
058117,000206: # MATIONS USE *NBSM* AND *SMNB*.
058118,000207:
058119,000208: 23,3644 77776 *SMNB* EXIT
058120,000209: 23,3645 13626 TCF C*MM*N1
058121,000210:
058122,000211: 23,3646 77776 *NBSM* EXIT
058123,000212: 23,3647 13641 TCF C*MM*N3
058124,000213:
058125,000214: # AX*SR*T COMBINES THE OLD SMNB AND NBSM. FOR THE NB TO SM
058126,000215: # TRANSFORMATION, ENTER WITH +3 IN A. FOR SM TO NB, ENTER WITH -3.
058127,000216: # THE VECTOR TO BE TRANSFORMED ARRIVES, AND IS RETURNED, IN VBUF.
058128,000217: # AX*SR*T EXPECTS TO FIND THE SINES AND COSINES OF THE ANGLES OF ROTATION
058129,000218: # AT SINCDU AND COSCDU, IN THE ORDER Y Z X. A CALL TO CD*TR*GS, WITH
058130,000219: # THE 2'S COMPLEMENT ANGLES (ORDER Y Z X) AT CDUSPOT, WILL TAKE CARE OF
058131,000220: # THIS. HERE IS A SAMPLE CALLING SEQUENCE:-
058132,000221: # TC CDUTRIGS
058133,000222: # CS THREE ("CA THREE" FOR NBSM)
058134,000223: # TC AX*SR*T
058135,000224: # THE CALL TO CD*TR*GS NEED NOT BE REPEATED, WHEN AX*SR*T IS CALLED MORE
058136,000225: # THAN ONCE, UNLESS THE ANGLES HAVE CHANGED.
058137,000226:
058138,000227: # AX*SR*T IS GUARANTEED SAFE ONLY FOR VECTORS OF MAGNITUDE LESS THAN
058139,000228: # UNITY. A LOOK AT THE CASE IN WHICH A VECTOR OF GREATER MAGNITUDE
058140,000229: # HAPPENS TO LIE ALONG AN AXIS OF THE SYSTEM TO WHICH IT IS TO BE TRANS-
058141,000230: # FORMED CONVINCES ONE THAT THIS IS A RESTRICTION WHICH MUST BE ACCEPTED.
058142,000231:
058143,000232: 23,3650 54142 AX*SR*T TS DEXDEX # WHERE IT BECOMES THE INDEX OF INDEXES
058144,000233: 23,3651 00006 EXTEND
058145,000234: 23,3652 22145 QXCH RTNSAVER
058146,000235:
058147,000236: 23,3653 10142 R*TL**P CCS DEXDEX # +3 --> 0 -3 --> 2
058148,000237: 23,3654 40142 CS DEXDEX # THUS: +2 --> 1 -2 --> 1
058149,000238: 23,3655 66214 AD THREE # +1 --> 2 -1 --> 0
|
Page 1370 |
058151,000240: 23,3656 00006 EXTEND
058152,000241: 23,3657 50000 INDEX A
058153,000242: 23,3660 33737 DCA INDEXI
058154,000243: 23,3661 52144 DXCH DEXI
058155,000244:
058156,000245: 23,3662 35017 CA ONE
058157,000246: 23,3663 54130 TS BUF
058158,000247: 23,3664 00006 EXTEND
058159,000248: 23,3665 50143 INDEX DEX1
058160,000249: 23,3666 40123 DCS VBUF
058161,000250: 23,3667 13671 TCF LOOP1 # REALLY BE A SUBTRACT, AND VICE VERSA
058162,000251:
058163,000252: 23,3670 52131 LOOP2 DXCH BUF # LOADING VECTOR COMPONENT, STORING INDEX
058164,000253:
058165,000254: 23,3671 52155 LOOP1 DXCH MPAC
058166,000255: 23,3672 33735 CA SINESLOC
058167,000256: 23,3673 60143 AD DEX1
058168,000257: 23,3674 54116 TS ADDRWD
058169,000258:
058170,000259: 23,3675 07056 TC DMPSUB # MULTIPLY BY SIN(CDUANGLE)
058171,000260: 23,3676 10142 CCS DEXDEX
058172,000261: 23,3677 52155 DXCH MPAC # NBSM CASE
058173,000262: 23,3700 13703 TCF +3
058174,000263: 23,3701 00006 EXTEND # SMNB CASE
058175,000264: 23,3702 40155 DCS MPAC
058176,000265: 23,3703 52134 DXCH TERM1TMP
058177,000266:
058178,000267: 23,3704 36211 CA SIX # SINCDU AND COSCDU (EACH 6 WORDS) MUST
058179,000268: 23,3705 26116 ADS ADDRWD # BE CONSECUTIVE AND IN THAT ORDER
058180,000269:
058181,000270: 23,3706 00006 EXTEND
058182,000271: 23,3707 50130 INDEX BUF
058183,000272: 23,3710 50143 INDEX DEX1
058184,000273: 23,3711 30123 DCA VBUF
058185,000274: 23,3712 52155 DXCH MPAC
058186,000275: 23,3713 07056 TC DMPSUB # MULTIPLY BY COS(CDUANGLE)
058187,000276: 23,3714 52155 DXCH MPAC
058188,000277: 23,3715 20134 DAS TERM1TMP
058189,000278: 23,3716 52134 DXCH TERM1TMP
058190,000279: 23,3717 20001 DDOUBL
058191,000280: 23,3720 50130 INDEX BUF
058192,000281: 23,3721 50143 INDEX DEX1
058193,000282: 23,3722 52123 DXCH VBUF
058194,000283: 23,3723 52131 DXCH BUF # LOADING INDEX, STORING VECTOR COMPONENT
058195,000284: 23,3724 10000 CCS A # 'CAUSE THAT'S WHERE THE INDEX NOW IS
058196,000285: 23,3725 13670 TCF LOOP2
058197,000286:
058198,000287: 23,3726 00006 EXTEND
058199,000288: 23,3727 26142 DIM DEXDEX # DECREMENT MAGNITUDE PRESERVING SIGN
058200,000289:
|
Page 1371 |
058202,000291: 23,3730 10142 TSTPOINT CCS DEXDEX # ONLY THE BRANCHING FUNCTION IS USED
058203,000292: 23,3731 13653 TCF R*TL**P
058204,000293: 23,3732 00145 TC RTNSAVER
058205,000294: 23,3733 13653 TCF R*TL**P
058206,000295: 23,3734 00145 TC RTNSAVER
058207,000296:
058208,000297: 23,3735 00736 SINESLOC ADRES SINCDU # FOR USE IN SETTING ADDRWD
058209,000298:
058210,000299: 23,3736 00004 INDEXI DEC 4 B-14 # ********** DON'T **********
058211,000300: 23,3737 00002 DEC 2 B-14 # ********** TOUCH **********
058212,000301: 23,3740 00000 DEC 0 B-14 # ********** THESE **********
058213,000302: 23,3741 00004 DEC 4 B-14 # ********** CONSTANTS **********
058214,000303:
058215,000304: # ****************************************************************************************************************
|
Page 1372 |
058217,000306: # THIS SUBROUTINE COMPUTES INCREMENTAL CHANGES IN CDU(GIMBAL) ANGLES FROM INCREMENTAL CHANGES ABOUT SM AXES. IT
058218,000307: # REQUIRES SM INCREMENTS AS A DP VECTOR SCALED AT ONE REVOLUTION(DTHETASM,+2,+4). SIN,COS(CDUY,Z,X) ARE IN
058219,000308: # SINCDU,+2,+4 AND COSCDU,+2,+4 RESPECTIVELY, SCALED TO ONE HALF. CDU INCREENTS ARE PLACED IN DCDU,+2,+4 SCALED TO
058220,000309: # ONE REVOLUTION.
058221,000310:
058222,000311: # * COS(IGA)SEC(MGA) 0 -SIN(IGA)SEC(MGA) *
058223,000312: # * *
058224,000313: # * -COS(IGA)TAN(MGA) 1 SIN(IGA)TAN(MGA) *
058225,000314: # * *
058226,000315: # * SIN(IGA) 0 COS(IGA) *
058227,000316:
058228,000317: 14,3422 BANK 14
058229,000318: 23,2000 SETLOC POWFLIT1
058230,000319: 23,2000 BANK
058231,000320:
058232,000321: 23,3742 41345 SMCDURES DLOAD DMP
058233,000322: 23,3743 03212 DTHETASM
058234,000323: 23,3744 00745 COSCDUY
058235,000324:
058236,000325: 23,3745 41325 PDDL DMP
058237,000326: 23,3746 03216 DTHETASM +4
058238,000327: 23,3747 00737 SINCDUY
058239,000328:
058240,000329: 23,3750 77621 BDSU
058241,000330: 23,3751 77671 DDV
058242,000331: 23,3752 00747 COSCDUZ
058243,000332: 23,3753 03204 STORE DCDU
058244,000333:
058245,000334: 23,3754 72405 DMP SL1 # SCALE
058246,000335: 23,3755 00741 SINCDUZ
058247,000336: 23,3756 77621 BDSU
058248,000337:
058249,000338: 23,3757 03214 DTHETASM +2
058250,000339: 23,3760 17206 STODL DCDU +2
058251,000340: 23,3761 03212 DTHETASM
058252,000341:
058253,000342: 23,3762 65205 DMP PDDL
058254,000343: 23,3763 00737 SINCDUY
058255,000344: 23,3764 03216 DTHETASM +4
058256,000345:
058257,000346: 23,3765 43205 DMP DAD
058258,000347: 23,3766 00745 COSCDUY
058259,000348: 23,3767 77752 SL1
058260,000349: 23,3770 03210 STORE DCDU +4
058261,000350: 23,3771 77616 RVQ
058262,000351:
End of include-file POWERED_FLIGHT_SUBROUTINES.agc. Parent file is MAIN.agc