Source Code
These source-code files are part of a reconstructed copy of Luminary 69/2,
the flown, final release of the Apollo 10 Lunar Module (LM) Apollo Guidance Computer (AGC) software.
The reconstruction is based on the source code of Luminary 69 — i.e., the initial, unflown version, "revision 0" — of which a contemporary listing was available. The code was then updated by incorporating the differences between Luminary 69 and Luminary 69/2, known from other contemporary documentation. The only such difference is the implementation in Luminary 69/2 of the "R-2 Lunar Potential Model", the source code for which was taken from program Luminary 99/1 (Apollo 11 LM), of which a contemporary listing was also available. Finally, the now-reconstructed Luminary 69/2 was then validated by assembling it to executable form and verifying that its memory banks had the correct checksums, known from still other contemporary documentation. Note that page numbers in the reconstructed code match those in the original Luminary 69 program listing, or in the ORBITAL INTEGRATION log section, in Luminary 99/1. Page numbers would certainly differ somewhat in a contemporary Luminary 69/2 listing. Moreover, annotations that were not present in the contemporary source code have been added to the reconstructed code to justify each change in Luminary 69/2 relative to Luminary 69. Here's a guide to the Apollo documentation referenced in those annotations:
|
054080,000002: ## Copyright: Public domain.
054081,000003: ## Filename: POWERED_FLIGHT_SUBROUTINES.agc
054082,000004: ## Purpose: A section of LUM69 revision 2.
054083,000005: ## It is part of the reconstructed source code for the flown
054084,000006: ## version of the flight software for the Lunar Module's (LM)
054085,000007: ## Apollo Guidance Computer (AGC) for Apollo 10. The code has
054086,000008: ## been recreated from a copy of Luminary revsion 069, using
054087,000009: ## changes present in Luminary 099 which were described in
054088,000010: ## Luminary memos 75 and 78. The code has been adapted such
054089,000011: ## that the resulting bugger words exactly match those specified
054090,000012: ## for LUM69 revision 2 in NASA drawing 2021152B, which gives
054091,000013: ## relatively high confidence that the reconstruction is correct.
054092,000014: ## Reference: pp. 1254-1261
054093,000015: ## Assembler: yaYUL
054094,000016: ## Contact: Ron Burkey <info@sandroid.org>.
054095,000017: ## Website: www.ibiblio.org/apollo/index.html
054096,000018: ## Mod history: 2019-07-27 MAS Created from Luminary 69.
054097,000019: ## 2021-05-30 ABS SINSLOC -> SINESLOC
054098,000020:
Page 1254 |
054100,000022: 14,3711 BANK 14 # SAME FBANK AS THE FINDCDUD SUB-PROGRAM
054101,000023: 23,2000 SETLOC POWFLITE
054102,000024: 23,2000 BANK
054103,000025:
054104,000026: 23,3443 0142 EBANK= DEXDEX
054105,000027: 23,3443 COUNT* $$/POWFL
054106,000028:
054107,000029: # CDUTRIG, CDUTRIG1, CDUTRIG2, AND CD*TR*GS ALL COMPUTE THE SINES AND
054108,000030: # COSINES OF THREE 2'S COMPLEMENT ANGLES AND PLACE THE RESULT, DOUBLE
054109,000031: # PRECISION, IN THE SAME ORDER AS THE INPUTS, AT SINCDU AND COSCDU. AN
054110,000032: # ADDITIONAL OUTPUT IS THE 1'S COMPLEMENT ANGLES AT CDUSPOT. THESE
054111,000033: # ROUTINES GO OUT OF THEIR WAY TO LEAVE THE MPAC AREA AS THEY FIND IT,
054112,000034: # EXCEPT FOR THE GENERALLY UNIMPORTANT MPAC +2. THEY DIFFER ONLY IN
054113,000035: # WHERE THEY GET THE ANGLES, AND IN METHOD OF CALLING.
054114,000036:
054115,000037: # CDUTRIG (AND CDUTRIG1, WHICH CAN BE CALLED IN BASIC) COMPUTE THE
054116,000038: # SINES AND COSINES FROM THE CURRENT CONTENTS OF THE CDU REGISTERS.
054117,000039: # THE CONTENTS OF CDUTEMP, ETC., ARE NOT TOUCHED SO THAT THEY MAY
054118,000040: # CONTINUE TO FORM A CONSISTENT SET WITH THE LATEST PIPA READINGS.
054119,000041:
054120,000042: # CDUTRIG1 IS LIKE CDUTRIG EXCEPT THAT IT CAN BE CALLED IN BASIC.
054121,000043:
054122,000044: # CD*TR*GS FINDS CDU VALUES IN CDUSPOT RATHER THAN IN CDUTEMP. THIS
054123,000045: # ALLOWS USERS TO MAKE TRANSFORMATIONS USING ARBITRARY ANGLES, OR REAL
054124,000046: # ANGLES IN AN ORDER OTHER THAN X Y Z. A CALL TO THIS ROUTINE IS
054125,000047: # NECESSARY IN PREPARATION FOR A CALL TO AX*SR*T IN EITHER OF ITS TWO
054126,000048: # MODES (SMNB OR NBSM). SINCE AX*SR*T EXPECTS TO FIND THE SINES AND
054127,000049: # COSINES IN THE ORDER Y Z X THE ANGLES MUST HAVE BEEN PLACED IN CDUSPOT
054128,000050: # IN THIS ORDER. CD*TR*GS NEED NOT BE REPEATED WHEN AX*SR*T IS CALLED
054129,000051: # MORE THAN ONCE, PROVIDED THE ANGLES HAVE NOT CHANGED. NOTE THAT SINCE
054130,000052: # IT CLOBBERS BUF2 (IN THE SINE AND COSINE ROUTINES) CD*TR*GS CANNOT BE
054131,000053: # CALLED USING BANKCALL. SORRY.
054132,000054:
054133,000055: # CD*TR*G IS LIKE CD*TR*GS EXCEPT THAT IT CAN BE CALLED IN
054134,000056: # INTERPRETIVE.
054135,000057:
054136,000058: 23,3443 77776 CDUTRIG EXIT
054137,000059: 23,3444 03453 TC CDUTRIGS
054138,000060: 23,3445 06036 TC INTPRET
054139,000061: 23,3446 77616 RVQ
054140,000062:
054141,000063: 23,3447 77776 CD*TR*G EXIT
054142,000064: 23,3450 03461 TC CD*TR*GS
054143,000065: 23,3451 06036 TC INTPRET
054144,000066: 23,3452 77616 RVQ
054145,000067:
054146,000068: 23,3453 30032 CDUTRIGS CA CDUX
054147,000069: 23,3454 54772 TS CDUSPOT +4
054148,000070: 23,3455 30033 CA CDUY
054149,000071: 23,3456 54766 TS CDUSPOT
Page 1255 |
054151,000073: 23,3457 30034 CA CDUZ
054152,000074: 23,3460 54770 TS CDUSPOT +2
054153,000075:
054154,000076: 23,3461 00006 CD*TR*GS EXTEND
054155,000077: 23,3462 22142 QXCH TEM2
054156,000078: 23,3463 34751 CAF FOUR
054157,000079: 23,3464 76241 TR*GL**P MASK SIX # MAKE IT EVEN AND SMALLER
054158,000080: 23,3465 54143 TS TEM3
054159,000081: 23,3466 50143 INDEX TEM3
054160,000082: 23,3467 30766 CA CDUSPOT
054161,000083: 23,3470 52155 DXCH MPAC # STORING 2'S COMP ANGLE, LOADING MPAC
054162,000084: 23,3471 52127 DXCH VBUF +4 # STORING MPAC FOR LATER RESTORATION
054163,000085: 23,3472 04713 TC USPRCADR
054164,000086: 23,3473 21465 CADR CDULOGIC
054165,000087: 23,3474 00006 EXTEND
054166,000088: 23,3475 30155 DCA MPAC
054167,000089: 23,3476 50143 INDEX TEM3
054168,000090: 23,3477 52767 DXCH CDUSPOT # STORING 1'S COMPLEMENT ANGLE
054169,000091: 23,3500 04713 TC USPRCADR
054170,000092: 23,3501 01517 CADR COSINE
054171,000093: 23,3502 52155 DXCH MPAC
054172,000094: 23,3503 50143 INDEX TEM3
054173,000095: 23,3504 52745 DXCH COSCDU # STORING COSINE
054174,000096: 23,3505 00006 EXTEND
054175,000097: 23,3506 50143 INDEX TEM3
054176,000098: 23,3507 30767 DCA CDUSPOT # LOADING 1'S COMPLEMENT ANGLE
054177,000099: 23,3510 04713 TC USPRCADR
054178,000100: 23,3511 01531 CADR SINE +1 # SINE +1 EXPECTS ARGUMENT IN A AND L
054179,000101: 23,3512 52127 DXCH VBUF +4 # BRINGING UP PRIOR MPAC TO BE RESTORED
054180,000102: 23,3513 52155 DXCH MPAC
054181,000103: 23,3514 50143 INDEX TEM3
054182,000104: 23,3515 52737 DXCH SINCDU
054183,000105: 23,3516 10143 CCS TEM3
054184,000106: 23,3517 13464 TCF TR*GL**P
054185,000107: 23,3520 00142 TC TEM2
Page 1256 |
054187,000109: # ****************************************************************************************************************
054188,000110: # QUICTRIG, INTENDED FOR GUIDANCE CYCLE USE WHERE TIME IS CRITICAL, IS A MUCH FASTER VERSION OF CD*TR*GS.
054189,000111: # QUICTRIG COMPUTES AND STORES THE SINES AND COSINES OF THE 2'S COMPLEMENT ANGLES AT CDUSPOT, CDUSPOT +2,
054190,000112: # AND CDUSPOT +4. UNLIKE CD*TR*GS, QUICTRIG DOES NOT LEAVE THE 1'S COMPLEMENT VERSIONS OF THE ANGLES IN
054191,000113: # CDUSPOT. QUICTRIG'S EXECUTION TIME IS 4.1 MS; THIS IS 10 TIMES AS FAST AS CD*TR*GS. QUICTRIG MAY BE
054192,000114: # CALLED FROM INTERPRETIVE AS AN RTB OP-CODE, OR FROM BASIC VIA BANKCALL OR IBNKCALL.
054193,000115:
054194,000116: 23,3521 00004 QUICTRIG INHINT # INHINT SINCE DAP USES THE SAME TEMPS
054195,000117: 23,3522 00006 EXTEND
054196,000118: 23,3523 22061 QXCH ITEMP1
054197,000119: 23,3524 34751 CAF FOUR
054198,000120: 23,3525 76241 +4 MASK SIX
054199,000121: 23,3526 54062 TS ITEMP2
054200,000122: 23,3527 50062 INDEX ITEMP2
054201,000123: 23,3530 30766 CA CDUSPOT
054202,000124: 23,3531 05033 TC SPSIN
054203,000125: 23,3532 00006 EXTEND
054204,000126: 23,3533 74736 MP BIT14 # SCALE DOWN TO MATCH INTERPRETER OUTPUTS
054205,000127: 23,3534 50062 INDEX ITEMP2
054206,000128: 23,3535 52737 DXCH SINCDU
054207,000129: 23,3536 50062 INDEX ITEMP2
054208,000130: 23,3537 30766 CA CDUSPOT
054209,000131: 23,3540 05032 TC SPCOS
054210,000132: 23,3541 00006 EXTEND
054211,000133: 23,3542 74736 MP BIT14
054212,000134: 23,3543 50062 INDEX ITEMP2
054213,000135: 23,3544 52745 DXCH COSCDU
054214,000136: 23,3545 10062 CCS ITEMP2
054215,000137: 23,3546 13525 TCF QUICTRIG +4
054216,000138: 23,3547 30061 CA ITEMP1
054217,000139: 23,3550 00003 RELINT
054218,000140: 23,3551 00000 TC A
054219,000141:
Page 1257 |
054221,000143: # ****************************************************************************************************************
054222,000144: # THESE INTERFACE ROUTINES MAKE IT POSSIBLE TO CALL AX*SR*T, ETC., IN
054223,000145: # INTERPRETIVE. LATER, WHERE POSSIBLE, THEY WILL BE ELIMINATED.
054224,000146:
054225,000147: # THESE INTERFACE ROUTINES ARE PERMANENT. ALL RESTORE USER'S EBANK
054226,000148: # SETTING. ALL ARE STRICT INTERPRETIVE SUBROUTINES, CALLED USING "CALL",
054227,000149: # RETURNING VIA QPRET. ALL EXPECT AND RETURN THE VECTOR TO BE TRANSFOR-
054228,000150: # MED INTERPRETER-STYLE IN MPAC; COMPONENTS AT MPAC, MPAC +3, AND MPAC +5.
054229,000151:
054230,000152: # TRG*SMNB AND TRG*NBSM BOTH EXPECT TO SEE THE 2'S COMPLEMENT ANGLES
054231,000153: # AT CDUSPOT (ORDER Y Z X, AT CDUSPOT, CDUSPOT +2, AND CDUSPOT +4; ODD
054232,000154: # LOCATIONS NEED NOT BE ZEROED). TRG*NBSM DOES THE NB TO SM TRANSFOR-
054233,000155: # MATION; TRG*SMNB, VICE VERSA.
054234,000156:
054235,000157: # CDU*NBSM DOES ITS TRANSFORMATION USING THE PRESENT CONTENTS OF
054236,000158: # THE CDU COUNTERS. OTHERWISE IT IS LIKE TRG*NBSM.
054237,000159:
054238,000160: # CDU*SMNB IS THE COMPLEMENT OF CDU*NBSM.
054239,000161:
054240,000162: 23,3552 77776 CDU*SMNB EXIT
054241,000163: 23,3553 03453 TC CDUTRIGS
054242,000164: 23,3554 13557 TCF C*MM*N1
054243,000165:
054244,000166: 23,3555 77776 TRG*SMNB EXIT
054245,000167: 23,3556 03461 TC CD*TR*GS
054246,000168: 23,3557 07531 C*MM*N1 TC MPACVBUF # AX*SR*T EXPECTS VECTOR IN VBUF
054247,000169: 23,3560 46244 CS THREE # SIGNAL FOR SM TO NB TRANSFORMATION
054248,000170: 23,3561 03601 C*MM*N2 TC AX*SR*T
054249,000171: 23,3562 06036 TC INTPRET
054250,000172: 23,3563 43575 VLOAD RVQ
054251,000173: 23,3564 00123 VBUF
054252,000174:
054253,000175: 23,3565 77776 CDU*NBSM EXIT
054254,000176: 23,3566 03453 TC CDUTRIGS
054255,000177: 23,3567 13572 TCF C*MM*N3
054256,000178:
054257,000179: 23,3570 77776 TRG*NBSM EXIT
054258,000180: 23,3571 03461 TC CD*TR*GS
054259,000181: 23,3572 07531 C*MM*N3 TC MPACVBUF # FOR AX*SR*T
054260,000182: 23,3573 36244 CA THREE # SIGNAL FOR NB TO SM TRANSFORMATION
054261,000183: 23,3574 13561 TCF C*MM*N2
054262,000184:
054263,000185: # *NBSM* AND *SMNB* EXPECT TO SEE THE SINES AND COSINES (AT SINCDU
054264,000186: # AND COSCDU) RATHER THAN THE ANGLES THEMSELVES. OTHERWISE THEY ARE
054265,000187: # LIKE TRG*NBSM AND TRG*SMNB.
054266,000188:
054267,000189: # NOTE THAT JUST AS CD*TR*GS NEED BE CALLED ONLY ONCE FOR EACH SERIES
054268,000190: # OF TRANSFORMATIONS USING THE SAME ANGLES, SO TOO ONLY ONE OF TRG*NBSM
Page 1258 |
054270,000192: # AND TRG*SMNB NEED BE CALLED FOR EACH SERIES. FOR SUBSEQUENT TRANSFOR-
054271,000193: # MATIONS USE *NBSM* AND *SMNB*.
054272,000194:
054273,000195: 23,3575 77776 *SMNB* EXIT
054274,000196: 23,3576 13557 TCF C*MM*N1
054275,000197:
054276,000198: 23,3577 77776 *NBSM* EXIT
054277,000199: 23,3600 13572 TCF C*MM*N3
054278,000200:
054279,000201: # AX*SR*T COMBINES THE OLD SMNB AND NBSM. FOR THE NB TO SM
054280,000202: # TRANSFORMATION, ENTER WITH +3 IN A. FOR SM TO NB, ENTER WITH -3.
054281,000203: # THE VECTOR TO BE TRANSFORMED ARRIVES, AND IS RETURNED, IN VBUF.
054282,000204: # AX*SR*T EXPECTS TO FIND THE SINES AND COSINES OF THE ANGLES OF ROTATION
054283,000205: # AT SINCDU AND COSCDU, IN THE ORDER Y Z X. A CALL TO CD*TR*GS, WITH
054284,000206: # THE 2'S COMPLEMENT ANGLES (ORDER Y Z X) AT CDUSPOT, WILL TAKE CARE OF
054285,000207: # THIS. HERE IS A SAMPLE CALLING SEQUENCE:-
054286,000208: # TC CDUTRIGS
054287,000209: # CS THREE ("CA THREE" FOR NBSM)
054288,000210: # TC AX*SR*T
054289,000211: # THE CALL TO CD*TR*GS NEED NOT BE REPEATED, WHEN AX*SR*T IS CALLED MORE
054290,000212: # THAN ONCE, UNLESS THE ANGLES HAVE CHANGED.
054291,000213:
054292,000214: # AX*SR*T IS GUARANTEED SAFE ONLY FOR VECTORS OF MAGNITUDE LESS THAN
054293,000215: # UNITY. A LOOK AT THE CASE IN WHICH A VECTOR OF GREATER MAGNITUDE
054294,000216: # HAPPENS TO LIE ALONG AN AXIS OF THE SYSTEM TO WHICH IT IS TO BE TRANS-
054295,000217: # FORMED CONVINCES ONE THAT THIS IS A RESTRICTION WHICH MUST BE ACCEPTED.
054296,000218:
054297,000219: 23,3601 54142 AX*SR*T TS DEXDEX # WHERE IT BECOMES THE INDEX OF INDEXES
054298,000220: 23,3602 00006 EXTEND
054299,000221: 23,3603 22145 QXCH RTNSAVER
054300,000222:
054301,000223: 23,3604 10142 R*TL**P CCS DEXDEX # +3 --> 0 -3 --> 2
054302,000224: 23,3605 40142 CS DEXDEX # THUS: +2 --> 1 -2 --> 1
054303,000225: 23,3606 66244 AD THREE # +1 --> 2 -1 --> 0
054304,000226: 23,3607 00006 EXTEND
054305,000227: 23,3610 50000 INDEX A
054306,000228: 23,3611 33670 DCA INDEXI
054307,000229: 23,3612 52144 DXCH DEXI
054308,000230:
054309,000231: 23,3613 34753 CA ONE
054310,000232: 23,3614 54130 TS BUF
054311,000233: 23,3615 00006 EXTEND
054312,000234: 23,3616 50143 INDEX DEX1
054313,000235: 23,3617 40123 DCS VBUF
054314,000236: 23,3620 13622 TCF LOOP1 # REALLY BE A SUBTRACT, AND VICE VERSA
054315,000237:
054316,000238: 23,3621 52131 LOOP2 DXCH BUF # LOADING VECTOR COMPONENT, STORING INDEX
Page 1259 |
054318,000240: 23,3622 52155 LOOP1 DXCH MPAC
054319,000241: 23,3623 33666 CA SINESLOC
054320,000242: 23,3624 60143 AD DEX1
054321,000243: 23,3625 54116 TS ADDRWD
054322,000244:
054323,000245: 23,3626 07106 TC DMPSUB # MULTIPLY BY SIN(CDUANGLE)
054324,000246: 23,3627 10142 CCS DEXDEX
054325,000247: 23,3630 52155 DXCH MPAC # NBSM CASE
054326,000248: 23,3631 13634 TCF +3
054327,000249: 23,3632 00006 EXTEND # SMNB CASE
054328,000250: 23,3633 40155 DCS MPAC
054329,000251: 23,3634 52160 DXCH TERM1TMP
054330,000252:
054331,000253: 23,3635 36241 CA SIX # SINCDU AND COSCDU (EACH 6 WORDS) MUST
054332,000254: 23,3636 26116 ADS ADDRWD # BE CONSECUTIVE AND IN THAT ORDER
054333,000255:
054334,000256: 23,3637 00006 EXTEND
054335,000257: 23,3640 50130 INDEX BUF
054336,000258: 23,3641 50143 INDEX DEX1
054337,000259: 23,3642 30123 DCA VBUF
054338,000260: 23,3643 52155 DXCH MPAC
054339,000261: 23,3644 07106 TC DMPSUB # MULTIPLY BY COS(CDUANGLE)
054340,000262: 23,3645 52155 DXCH MPAC
054341,000263: 23,3646 20160 DAS TERM1TMP
054342,000264: 23,3647 52160 DXCH TERM1TMP
054343,000265: 23,3650 20001 DDOUBL
054344,000266: 23,3651 50130 INDEX BUF
054345,000267: 23,3652 50143 INDEX DEX1
054346,000268: 23,3653 52123 DXCH VBUF
054347,000269: 23,3654 52131 DXCH BUF # LOADING INDEX, STORING VECTOR COMPONENT
054348,000270:
054349,000271: 23,3655 10000 CCS A # 'CAUSE THAT'S WHERE THE INDEX NOW IS
054350,000272: 23,3656 13621 TCF LOOP2
054351,000273:
054352,000274: 23,3657 00006 EXTEND
054353,000275: 23,3660 26142 DIM DEXDEX # DECREMENT MAGNITUDE PRESERVING SIGN
054354,000276:
054355,000277: 23,3661 10142 TSTPOINT CCS DEXDEX # ONLY THE BRANCHING FUNCTION IS USED
054356,000278: 23,3662 13604 TCF R*TL**P
054357,000279: 23,3663 00145 TC RTNSAVER
054358,000280: 23,3664 13604 TCF R*TL**P
054359,000281: 23,3665 00145 TC RTNSAVER
054360,000282:
054361,000283: 23,3666 00736 SINESLOC ADRES SINCDU # FOR USE IN SETTING ADDRWD
054362,000284:
054363,000285: 23,3667 00004 INDEXI DEC 4 B-14 # ********** DON'T **********
054364,000286: 23,3670 00002 DEC 2 B-14 # ********** TOUCH **********
054365,000287: 23,3671 00000 DEC 0 B-14 # ********** THESE **********
Page 1260 |
054367,000289: 23,3672 00004 DEC 4 B-14 # ********** CONSTANTS **********
054368,000290:
054369,000291: # ****************************************************************************************************************
Page 1261 |
054371,000293: # THIS SUBROUTINE COMPUTES INCREMENTAL CHANGES IN CDU(GIMBAL) ANGLES FROM INCREMENTAL CHANGES ABOUT SM AXES. IT
054372,000294: # REQUIRES SM INCREMENTS AS A DP VECTOR SCALED AT ONE REVOLUTION(DTHETASM,+2,+4). SIN,COS(CDUY,Z,X) ARE IN
054373,000295: # SINCDU,+2,+4 AND COSCDU,+2,+4 RESPECTIVELY,SCALED TO ONE HALF. CDU INCREENTS ARE PLACED IN DCDU,+2,+4 SCALED TO
054374,000296: # ONE REVOLUTION.
054375,000297:
054376,000298: # * COS(IGA)SEC(MGA) 0 -SIN(IGA)SEC(MGA) *
054377,000299: # * *
054378,000300: # * -COS(IGA)TAN(MGA) 1 SIN(IGA)TAN(MGA) *
054379,000301: # * *
054380,000302: # * SIN(IGA) 0 COS(IGA) *
054381,000303:
054382,000304: 14,3711 BANK 14
054383,000305: 23,2000 SETLOC POWFLIT1
054384,000306: 23,2000 BANK
054385,000307: 23,3673 41345 SMCDURES DLOAD DMP
054386,000308: 23,3674 01265 DTHETASM
054387,000309: 23,3675 00745 COSCDUY
054388,000310:
054389,000311: 23,3676 41325 PDDL DMP
054390,000312: 23,3677 01271 DTHETASM +4
054391,000313: 23,3700 00737 SINCDUY
054392,000314:
054393,000315: 23,3701 77621 BDSU
054394,000316: 23,3702 77671 DDV
054395,000317: 23,3703 00747 COSCDUZ
054396,000318: 23,3704 03234 STORE DCDU
054397,000319:
054398,000320: 23,3705 72405 DMP SL1 # SCALE
054399,000321: 23,3706 00741 SINCDUZ
054400,000322: 23,3707 77621 BDSU
054401,000323:
054402,000324: 23,3710 01267 DTHETASM +2
054403,000325: 23,3711 17236 STODL DCDU +2
054404,000326: 23,3712 01265 DTHETASM
054405,000327:
054406,000328: 23,3713 65205 DMP PDDL
054407,000329: 23,3714 00737 SINCDUY
054408,000330: 23,3715 01271 DTHETASM +4
054409,000331:
054410,000332: 23,3716 43205 DMP DAD
054411,000333: 23,3717 00745 COSCDUY
054412,000334: 23,3720 77752 SL1
054413,000335: 23,3721 03240 STORE DCDU +4
054414,000336: 23,3722 77616 RVQ
054415,000337:
End of include-file POWERED_FLIGHT_SUBROUTINES.agc. Parent file is MAIN.agc