Source Code
![]() |
These source-code files were from the printout at the MIT Museum, with many thanks
to Deborah Douglas, the Museum's Curator of Science and Technology, for releasing
it to us. The printout was digitally photographed by Paul Fjeld. A team of
volunteers transcribed the source code manually from these images or, where
appropriate, modified already-transcribed but similar source Luminary 131 (Apollo 13)
source code to agree with the images from the printout. Note that the page images
presented online are of reduced quality, and that higher-quality images
are available. Report any conversion errors or legibility
problems in page images to info@sandroid.org.
Notations on the program listing read, in part:GAP: ASSEMBLE REVISION 001 OF AGC PROGRAM LMY99 BY NASA 2021112-061 20'35 OCT. 28,1968Note that the date is the date of the printout, not the date of the program revision. |
053804,000002: ## Copyright: Public domain.
053805,000003: ## Filename: POWERED_FLIGHT_SUBROUTINES.agc
053806,000004: ## Purpose: Part of the source code for Luminary 1A build 099.
053807,000005: ## It is part of the source code for the Lunar Module's (LM)
053808,000006: ## Apollo Guidance Computer (AGC), for Apollo 11.
053809,000007: ## Assembler: yaYUL
053810,000008: ## Contact: Ron Burkey <info@sandroid.org>.
053811,000009: ## Website: www.ibiblio.org/apollo.
053812,000010: ## Pages: 1259-1267
053813,000011: ## Mod history: 2009-05-26 RSB Adapted from the corresponding
053814,000012: ## Luminary131 file, using page
053815,000013: ## images from Luminary 1A.
053816,000014: ## 2011-01-06 JL Fixed pseudo-label indentation.
053817,000015: ## 2016-12-17 RSB Proofed text comments with octopus/ProoferComments
053818,000016: ## and corrected the errors found.
053819,000017: ## 2017-03-16 RSB Comment-text fixes identified in 5-way
053820,000018: ## side-by-side diff of Luminary 69/99/116/131/210.
053821,000019: ## 2017-03-17 RSB Comment-text fixes identified in diff'ing
053822,000020: ## Luminary 99 vs Comanche 55.
053823,000021:
053824,000022: ## This source code has been transcribed or otherwise adapted from
053825,000023: ## digitized images of a hardcopy from the MIT Museum. The digitization
053826,000024: ## was performed by Paul Fjeld, and arranged for by Deborah Douglas of
053827,000025: ## the Museum. Many thanks to both. The images (with suitable reduction
053828,000026: ## in storage size and consequent reduction in image quality as well) are
053829,000027: ## available online at www.ibiblio.org/apollo. If for some reason you
053830,000028: ## find that the images are illegible, contact me at info@sandroid.org
053831,000029: ## about getting access to the (much) higher-quality images which Paul
053832,000030: ## actually created.
053833,000031: ##
053834,000032: ## Notations on the hardcopy document read, in part:
053835,000033: ##
053836,000034: ## Assemble revision 001 of AGC program LMY99 by NASA 2021112-61
053837,000035: ## 16:27 JULY 14, 1969
053838,000036:
![]() |
Page 1259 |
053840,000038: 14,3774 BANK 14 # SAME FBANK AS THE FINDCDUD SUB-PROGRAM
053841,000039: 23,2000 SETLOC POWFLITE
053842,000040: 23,2000 BANK
053843,000041:
053844,000042: 23,3537 0142 EBANK= DEXDEX
053845,000043: 23,3537 COUNT* $$/POWFL
053846,000044:
053847,000045: # CDUTRIG, CDUTRIG1, CDUTRIG2, AND CD*TR*GS ALL COMPUTE THE SINES AND
053848,000046: # COSINES OF THREE 2'S COMPLEMENT ANGLES AND PLACE THE RESULT, DOUBLE
053849,000047: # PRECISION, IN THE SAME ORDER AS THE INPUTS, AT SINCDU AND COSCDU. AN
053850,000048: # ADDITIONAL OUTPUT IS THE 1'S COMPLEMENT ANGLES AT CDUSPOT. THESE
053851,000049: # ROUTINES GO OUT OF THEIR WAY TO LEAVE THE MPAC AREA AS THEY FIND IT,
053852,000050: # EXCEPT FOR THE GENERALLY UNIMPORTANT MPAC +2. THEY DIFFER ONLY IN
053853,000051: # WHERE THEY GET THE ANGLES, AND IN METHOD OF CALLING.
053854,000052:
053855,000053: # CDUTRIG (AND CDUTRIG1, WHICH CAN BE CALLED IN BASIC) COMPUTE THE
053856,000054: # SINES AND COSINES FROM THE CURRENT CONTENTS OF THE CDU REGISTERS.
053857,000055: # THE CONTENTS OF CDUTEMP, ETC., ARE NOT TOUCHED SO THAT THEY MAY
053858,000056: # CONTINUE TO FORM A CONSISTENT SET WITH THE LATEST PIPA READINGS.
053859,000057:
053860,000058: # CDUTRIG1 IS LIKE CDUTRIG EXCEPT THAT IT CAN BE CALLED IN BASIC.
053861,000059:
053862,000060: # CD*TR*GS FINDS CDU VALUES IN CDUSPOT RATHER THAN IN CDUTEMP. THIS
053863,000061: # ALLOWS USERS TO MAKE TRANSFORMATIONS USING ARBITRARY ANGLES, OR REAL
053864,000062: # ANGLES IN AN ORDER OTHER THAN X Y Z. A CALL TO THIS ROUTINE IS
053865,000063: # NECESSARY IN PREPARATION FOR A CALL TO AX*SR*T IN EITHER OF ITS TWO
053866,000064: # MODES (SMNB OR NBSM). SINCE AX*SR*T EXPECTS TO FIND THE SINES AND
053867,000065: # COSINES IN THE ORDER Y Z X THE ANGLES MUST HAVE BEEN PLACED IN CDUSPOT
053868,000066: # IN THIS ORDER. CD*TR*GS NEED NOT BE REPEATED WHEN AX*SR*T IS CALLED
053869,000067: # MORE THAN ONCE, PROVIDED THE ANGLES HAVE NOT CHANGED. NOTE THAT SINCE
053870,000068: # IT CLOBBERS BUF2 (IN THE SINE AND COSINE ROUTINES) CD*TR*GS CANNOT BE
053871,000069: # CALLED USING BANKCALL. SORRY.
053872,000070:
053873,000071: # CD*TR*G IS LIKE CD*TR*GS EXCEPT THAT IT CAN BE CALLED IN
053874,000072: # INTERPRETIVE.
053875,000073:
053876,000074: 23,3537 77776 CDUTRIG EXIT
053877,000075: 23,3540 03547 TC CDUTRIGS
053878,000076: 23,3541 06037 TC INTPRET
053879,000077: 23,3542 77616 RVQ
053880,000078:
053881,000079: 23,3543 77776 CD*TR*G EXIT
053882,000080: 23,3544 03555 TC CD*TR*GS
053883,000081: 23,3545 06037 TC INTPRET
053884,000082: 23,3546 77616 RVQ
053885,000083:
053886,000084: 23,3547 30032 CDUTRIGS CA CDUX
053887,000085: 23,3550 54772 TS CDUSPOT +4
053888,000086: 23,3551 30033 CA CDUY
053889,000087: 23,3552 54766 TS CDUSPOT
![]() |
Page 1260 |
053891,000089: 23,3553 30034 CA CDUZ
053892,000090: 23,3554 54770 TS CDUSPOT +2
053893,000091:
053894,000092: 23,3555 00006 CD*TR*GS EXTEND
053895,000093: 23,3556 22142 QXCH TEM2
053896,000094: 23,3557 34751 CAF FOUR
053897,000095: 23,3560 76242 TR*GL**P MASK SIX # MAKE IT EVEN AND SMALLER
053898,000096: 23,3561 54143 TS TEM3
053899,000097: 23,3562 50143 INDEX TEM3
053900,000098: 23,3563 30766 CA CDUSPOT
053901,000099: 23,3564 52155 DXCH MPAC # STORING 2'S COMP ANGLE, LOADING MPAC
053902,000100: 23,3565 52127 DXCH VBUF +4 # STORING MPAC FOR LATER RESTORATION
053903,000101: 23,3566 04713 TC USPRCADR
053904,000102: 23,3567 21576 CADR CDULOGIC
053905,000103: 23,3570 00006 EXTEND
053906,000104: 23,3571 30155 DCA MPAC
053907,000105: 23,3572 50143 INDEX TEM3
053908,000106: 23,3573 52767 DXCH CDUSPOT # STORING 1'S COMPLEMENT ANGLE
053909,000107: 23,3574 04713 TC USPRCADR
053910,000108: 23,3575 01517 CADR COSINE
053911,000109: 23,3576 52155 DXCH MPAC
053912,000110: 23,3577 50143 INDEX TEM3
053913,000111: 23,3600 52745 DXCH COSCDU # STORING COSINE
053914,000112: 23,3601 00006 EXTEND
053915,000113: 23,3602 50143 INDEX TEM3
053916,000114: 23,3603 30767 DCA CDUSPOT # LOADING 1'S COMPLEMENT ANGLE
053917,000115: 23,3604 04713 TC USPRCADR
053918,000116: 23,3605 01531 CADR SINE +1 # SINE +1 EXPECTS ARGUMENT IN A AND L
053919,000117: 23,3606 52127 DXCH VBUF +4 # BRINGING UP PRIOR MPAC TO BE RESTORED
053920,000118: 23,3607 52155 DXCH MPAC
053921,000119: 23,3610 50143 INDEX TEM3
053922,000120: 23,3611 52737 DXCH SINCDU
053923,000121: 23,3612 10143 CCS TEM3
053924,000122: 23,3613 13560 TCF TR*GL**P
053925,000123: 23,3614 00142 TC TEM2
![]() |
Page 1261 |
053927,000125: # ****************************************************************************************************************
053928,000126: # QUICTRIG, INTENDED FOR GUIDANCE CYCLE USE WHERE TIME IS CRITICAL, IS A MUCH FASTER VERSION OF CD*TR*GS.
053929,000127: # QUICTRIG COMPUTES AND STORES THE SINES AND COSINES OF THE 2'S COMPLEMENT ANGLES AT CDUSPOT, CDUSPOT +2,
053930,000128: # AND CDUSPOT +4. UNLIKE CD*TR*GS, QUICTRIG DOES NOT LEAVE THE 1'S COMPLEMENT VERSIONS OF THE ANGLES IN
053931,000129: # CDUSPOT. QUICTRIG'S EXECUTION TIME IS 4.1 MS; THIS IS 10 TIMES AS FAST AS CD*TR*GS. QUICTRIG MAY BE
053932,000130: # CALLED FROM INTERPRETIVE AS AN RTB OP-CODE, OR FROM BASIC VIA BANKCALL OR IBNKCALL.
053933,000131:
053934,000132: 23,3615 00004 QUICTRIG INHINT # INHINT SINCE DAP USES THE SAME TEMPS
053935,000133: 23,3616 00006 EXTEND
053936,000134: 23,3617 22061 QXCH ITEMP1
053937,000135: 23,3620 34751 CAF FOUR
053938,000136: 23,3621 76242 +4 MASK SIX
053939,000137: 23,3622 54062 TS ITEMP2
053940,000138: 23,3623 50062 INDEX ITEMP2
053941,000139: 23,3624 30766 CA CDUSPOT
053942,000140: 23,3625 05033 TC SPSIN
053943,000141: 23,3626 00006 EXTEND
053944,000142: 23,3627 74736 MP BIT14 # SCALE DOWN TO MATCH INTERPRETER OUTPUTS
053945,000143: 23,3630 50062 INDEX ITEMP2
053946,000144: 23,3631 52737 DXCH SINCDU
053947,000145: 23,3632 50062 INDEX ITEMP2
053948,000146: 23,3633 30766 CA CDUSPOT
053949,000147: 23,3634 05032 TC SPCOS
053950,000148: 23,3635 00006 EXTEND
053951,000149: 23,3636 74736 MP BIT14
053952,000150: 23,3637 50062 INDEX ITEMP2
053953,000151: 23,3640 52745 DXCH COSCDU
053954,000152: 23,3641 10062 CCS ITEMP2
053955,000153: 23,3642 13621 TCF QUICTRIG +4
053956,000154: 23,3643 30061 CA ITEMP1
053957,000155: 23,3644 00003 RELINT
053958,000156: 23,3645 00000 TC A
053959,000157:
![]() |
Page 1262 |
053961,000159: # ****************************************************************************************************************
053962,000160: # THESE INTERFACE ROUTINES MAKE IT POSSIBLE TO CALL AX*SR*T, ETC., IN
053963,000161: # INTERPRETIVE. LATER, WHERE POSSIBLE, THEY WILL BE ELIMINATED.
053964,000162:
053965,000163: # THESE INTERFACE ROUTINES ARE PERMANENT. ALL RESTORE USER'S EBANK
053966,000164: # SETTING. ALL ARE STRICT INTERPRETIVE SUBROUTINES, CALLED USING "CALL",
053967,000165: # RETURNING VIA QPRET. ALL EXPECT AND RETURN THE VECTOR TO BE TRANSFOR-
053968,000166: # MED INTERPRETER-STYLE IN MPAC; COMPONENTS AT MPAC, MPAC +3, AND MPAC +5.
053969,000167:
053970,000168: # TRG*SMNB AND TRG*NBSM BOTH EXPECT TO SEE THE 2'S COMPLEMENT ANGLES
053971,000169: # AT CDUSPOT (ORDER Y Z X, AT CDUSPOT, CDUSPOT +2, AND CDUSPOT +4; ODD
053972,000170: # LOCATIONS NEED NOT BE ZEROED). TRG*NBSM DOES THE NB TO SM TRANSFOR-
053973,000171: # MATION; TRG*SMNB, VICE VERSA.
053974,000172:
053975,000173: # CDU*NBSM DOES ITS TRANSFORMATION USING THE PRESENT CONTENTS OF
053976,000174: # THE CDU COUNTERS. OTHERWISE IT IS LIKE TRG*NBSM.
053977,000175:
053978,000176: # CDU*SMNB IS THE COMPLEMENT OF CDU*NBSM.
053979,000177:
053980,000178: 23,3646 77776 CDU*SMNB EXIT
053981,000179: 23,3647 03547 TC CDUTRIGS
053982,000180: 23,3650 13653 TCF C*MM*N1
053983,000181:
053984,000182: 23,3651 77776 TRG*SMNB EXIT
053985,000183: 23,3652 03555 TC CD*TR*GS
053986,000184: 23,3653 07532 C*MM*N1 TC MPACVBUF # AX*SR*T EXPECTS VECTOR IN VBUF
053987,000185: 23,3654 46245 CS THREE # SIGNAL FOR SM TO NB TRANSFORMATION
053988,000186: 23,3655 03675 C*MM*N2 TC AX*SR*T
053989,000187: 23,3656 06037 TC INTPRET
053990,000188: 23,3657 43575 VLOAD RVQ
053991,000189: 23,3660 00123 VBUF
053992,000190:
053993,000191: 23,3661 77776 CDU*NBSM EXIT
053994,000192: 23,3662 03547 TC CDUTRIGS
053995,000193: 23,3663 13666 TCF C*MM*N3
053996,000194:
053997,000195: 23,3664 77776 TRG*NBSM EXIT
053998,000196: 23,3665 03555 TC CD*TR*GS
053999,000197: 23,3666 07532 C*MM*N3 TC MPACVBUF # FOR AX*SR*T
054000,000198: 23,3667 36245 CA THREE # SIGNAL FOR NB TO SM TRANSFORMATION
054001,000199: 23,3670 13655 TCF C*MM*N2
054002,000200:
054003,000201: # *NBSM* AND *SMNB* EXPECT TO SEE THE SINES AND COSINES (AT SINCDU
054004,000202: # AND COSCDU) RATHER THAN THE ANGLES THEMSELVES. OTHERWISE THEY ARE
054005,000203: # LIKE TRG*NBSM AND TRG*SMNB.
054006,000204:
054007,000205: # NOTE THAT JUST AS CD*TR*GS NEED BE CALLED ONLY ONCE FOR EACH SERIES
054008,000206: # OF TRANSFORMATIONS USING THE SAME ANGLES, SO TOO ONLY ONE OF TRG*NBSM
![]() |
Page 1263 |
054010,000208: # AND TRG*SMNB NEED BE CALLED FOR EACH SERIES. FOR SUBSEQUENT TRANSFOR-
054011,000209: # MATIONS USE *NBSM* AND *SMNB*.
054012,000210:
054013,000211: 23,3671 77776 *SMNB* EXIT
054014,000212: 23,3672 13653 TCF C*MM*N1
054015,000213:
054016,000214: 23,3673 77776 *NBSM* EXIT
054017,000215: 23,3674 13666 TCF C*MM*N3
054018,000216:
054019,000217: # AX*SR*T COMBINES THE OLD SMNB AND NBSM. FOR THE NB TO SM
054020,000218: # TRANSFORMATION, ENTER WITH +3 IN A. FOR SM TO NB, ENTER WITH -3.
054021,000219: # THE VECTOR TO BE TRANSFORMED ARRIVES, AND IS RETURNED, IN VBUF.
054022,000220: # AX*SR*T EXPECTS TO FIND THE SINES AND COSINES OF THE ANGLES OF ROTATION
054023,000221: # AT SINCDU AND COSCDU, IN THE ORDER Y Z X. A CALL TO CD*TR*GS, WITH
054024,000222: # THE 2'S COMPLEMENT ANGLES (ORDER Y Z X) AT CDUSPOT, WILL TAKE CARE OF
054025,000223: # THIS. HERE IS A SAMPLE CALLING SEQUENCE:-
054026,000224: # TC CDUTRIGS
054027,000225: # CS THREE ("CA THREE" FOR NBSM)
054028,000226: # TC AX*SR*T
054029,000227: # THE CALL TO CD*TR*GS NEED NOT BE REPEATED, WHEN AX*SR*T IS CALLED MORE
054030,000228: # THAN ONCE, UNLESS THE ANGLES HAVE CHANGED.
054031,000229:
054032,000230: # AX*SR*T IS GUARANTEED SAFE ONLY FOR VECTORS OF MAGNITUDE LESS THAN
054033,000231: # UNITY. A LOOK AT THE CASE IN WHICH A VECTOR OF GREATER MAGNITUDE
054034,000232: # HAPPENS TO LIE ALONG AN AXIS OF THE SYSTEM TO WHICH IT IS TO BE TRANS-
054035,000233: # FORMED CONVINCES ONE THAT THIS IS A RESTRICTION WHICH MUST BE ACCEPTED.
054036,000234:
054037,000235: 23,3675 54142 AX*SR*T TS DEXDEX # WHERE IT BECOMES THE INDEX OF INDEXES
054038,000236: 23,3676 00006 EXTEND
054039,000237: 23,3677 22145 QXCH RTNSAVER
054040,000238:
054041,000239: 23,3700 10142 R*TL**P CCS DEXDEX # +3 --> 0 -3 --> 2
054042,000240: 23,3701 40142 CS DEXDEX # THUS: +2 --> 1 -2 --> 1
054043,000241: 23,3702 66245 AD THREE # +1 --> 2 -1 --> 0
054044,000242: 23,3703 00006 EXTEND
054045,000243: 23,3704 50000 INDEX A
054046,000244: 23,3705 33764 DCA INDEXI
054047,000245: 23,3706 52144 DXCH DEXI
054048,000246:
054049,000247: 23,3707 34753 CA ONE
054050,000248: 23,3710 54130 TS BUF
054051,000249: 23,3711 00006 EXTEND
054052,000250: 23,3712 50143 INDEX DEX1
054053,000251: 23,3713 40123 DCS VBUF
054054,000252: 23,3714 13716 TCF LOOP1 # REALLY BE A SUBTRACT, AND VICE VERSA
054055,000253:
054056,000254: 23,3715 52131 LOOP2 DXCH BUF # LOADING VECTOR COMPONENT, STORING INDEX
![]() |
Page 1264 |
054058,000256: 23,3716 52155 LOOP1 DXCH MPAC
054059,000257: 23,3717 33762 CA SINSLOC
054060,000258: 23,3720 60143 AD DEX1
054061,000259: 23,3721 54116 TS ADDRWD
054062,000260:
054063,000261: 23,3722 07107 TC DMPSUB # MULTIPLY BY SIN(CDUANGLE)
054064,000262: 23,3723 10142 CCS DEXDEX
054065,000263: 23,3724 52155 DXCH MPAC # NBSM CASE
054066,000264: 23,3725 13730 TCF +3
054067,000265: 23,3726 00006 EXTEND # SMNB CASE
054068,000266: 23,3727 40155 DCS MPAC
054069,000267: 23,3730 52160 DXCH TERM1TMP
054070,000268:
054071,000269: 23,3731 36242 CA SIX # SINCDU AND COSCDU (EACH 6 WORDS) MUST
054072,000270: 23,3732 26116 ADS ADDRWD # BE CONSECUTIVE AND IN THAT ORDER
054073,000271:
054074,000272: 23,3733 00006 EXTEND
054075,000273: 23,3734 50130 INDEX BUF
054076,000274: 23,3735 50143 INDEX DEX1
054077,000275: 23,3736 30123 DCA VBUF
054078,000276: 23,3737 52155 DXCH MPAC
054079,000277: 23,3740 07107 TC DMPSUB # MULTIPLY BY COS(CDUANGLE)
054080,000278: 23,3741 52155 DXCH MPAC
054081,000279: 23,3742 20160 DAS TERM1TMP
054082,000280: 23,3743 52160 DXCH TERM1TMP
054083,000281: 23,3744 20001 DDOUBL
054084,000282: 23,3745 50130 INDEX BUF
054085,000283: 23,3746 50143 INDEX DEX1
054086,000284: 23,3747 52123 DXCH VBUF
054087,000285: 23,3750 52131 DXCH BUF # LOADING INDEX, STORING VECTOR COMPONENT
054088,000286:
054089,000287: 23,3751 10000 CCS A # 'CAUSE THAT'S WHERE THE INDEX NOW IS
054090,000288: 23,3752 13715 TCF LOOP2
054091,000289:
054092,000290: 23,3753 00006 EXTEND
054093,000291: 23,3754 26142 DIM DEXDEX # DECREMENT MAGNITUDE PRESERVING SIGN
054094,000292:
054095,000293: 23,3755 10142 TSTPOINT CCS DEXDEX # ONLY THE BRANCHING FUNCTION IS USED
054096,000294: 23,3756 13700 TCF R*TL**P
054097,000295: 23,3757 00145 TC RTNSAVER
054098,000296: 23,3760 13700 TCF R*TL**P
054099,000297: 23,3761 00145 TC RTNSAVER
054100,000298:
054101,000299: 23,3762 00736 SINSLOC ADRES SINCDU # FOR USE IN SETTING ADDRWD
054102,000300:
054103,000301: 23,3763 00004 INDEXI DEC 4 B-14 # ********** DON'T **********
054104,000302: 23,3764 00002 DEC 2 B-14 # ********** TOUCH **********
054105,000303: 23,3765 00000 DEC 0 B-14 # ********** THESE **********
![]() |
Page 1265 |
054107,000305: 23,3766 00004 DEC 4 B-14 # ********** CONSTANTS **********
054108,000306:
054109,000307: # ****************************************************************************************************************
054110,000308:
054111,000309: 10,2030 BANK 10
054112,000310: 10,2000 SETLOC FLESHLOC
054113,000311: 10,2000 BANK
054114,000312: 10,2030 COUNT* $$/POWFL
054115,000313:
054116,000314: # ROUTINE FLESHPOT COMPUTES THE BODY-STABLE MEMBER TRANSFORMATION MATRIX (COMMONLY CALLED XNB) AND STORES
054117,000315: # IT IN THE LOCATIONS SPECIFIED BY THE ECADR ENTERING IN A.
054118,000316:
054119,000317: 10,2030 77776 CALCSMSC EXIT
054120,000318: 10,2031 04616 TC BANKCALL
054121,000319: 10,2032 20036 CADR FLESHPOT -1
054122,000320: 10,2033 06037 TC INTPRET
054123,000321: 10,2034 77616 RVQ
054124,000322:
054125,000323: 10,2035 02664 XNBECADR ECADR XNB
054126,000324:
054127,000325: 10,2036 32035 -1 CAF XNBECADR
054128,000326:
054129,000327: 10,2037 54142 FLESHPOT TS TEM2
054130,000328: 10,2040 56003 XCH EBANK
054131,000329: 10,2041 56142 XCH TEM2
054132,000330: 10,2042 74357 MASK LOW8
054133,000331: 10,2043 65007 AD OCT1400
054134,000332: 10,2044 54141 TS TEM1
054135,000333:
054136,000334: 10,2045 00006 EXTEND
054137,000335: 10,2046 30745 DCA COSCDUY
054138,000336: 10,2047 52155 DXCH MPAC
054139,000337: 10,2050 07103 TC DMP
054140,000338: 10,2051 00746 ADRES COSCDUZ
054141,000339: 10,2052 52155 DXCH MPAC
054142,000340: 10,2053 20001 DDOUBL
054143,000341: 10,2054 50141 INDEX TEM1
054144,000342: 10,2055 52001 DXCH 0 # = COSY COSZ
054145,000343:
054146,000344: 10,2056 00006 EXTEND
054147,000345: 10,2057 30741 DCA SINCDUZ
054148,000346: 10,2060 50141 INDEX TEM1
054149,000347: 10,2061 52003 DXCH 2 # = SINZ
054150,000348:
054151,000349: 10,2062 00006 EXTEND
054152,000350: 10,2063 40737 DCS SINCDUY
054153,000351: 10,2064 52155 DXCH MPAC
054154,000352: 10,2065 07107 TC DMPSUB # ADDRWD SET TO COSCDUZ
![]() |
Page 1266 |
054156,000354: 10,2066 52155 DXCH MPAC
054157,000355: 10,2067 20001 DDOUBL
054158,000356: 10,2070 50141 INDEX TEM1
054159,000357: 10,2071 52005 DXCH 4 # = - SINY COSZ
054160,000358:
054161,000359: 10,2072 00006 EXTEND
054162,000360: 10,2073 40743 DCS SINCDUX
054163,000361: 10,2074 52155 DXCH MPAC
054164,000362: 10,2075 07107 TC DMPSUB # ADDRWD SET TO COSCDUZ STILL
054165,000363: 10,2076 52155 DXCH MPAC
054166,000364: 10,2077 20001 DDOUBL
054167,000365: 10,2100 52160 DXCH MPAC +3
054168,000366:
054169,000367: 10,2101 00006 EXTEND
054170,000368: 10,2102 40743 DCS SINCDUX
054171,000369: 10,2103 52155 DXCH MPAC
054172,000370: 10,2104 07103 TC DMP
054173,000371: 10,2105 00740 ADRES SINCDUZ
054174,000372: 10,2106 00006 EXTEND
054175,000373: 10,2107 40155 DCS MPAC
054176,000374: 10,2110 52162 DXCH MPAC +5
054177,000375: 10,2111 07103 TC DMP
054178,000376: 10,2112 00736 ADRES SINCDUY
054179,000377: 10,2113 52155 DXCH MPAC
054180,000378: 10,2114 20001 DDOUBL
054181,000379: 10,2115 20001 DDOUBL
054182,000380: 10,2116 52162 DXCH MPAC +5
054183,000381:
054184,000382: 10,2117 52155 DXCH MPAC
054185,000383: 10,2120 07103 TC DMP
054186,000384: 10,2121 00744 ADRES COSCDUY
054187,000385: 10,2122 52155 DXCH MPAC
054188,000386: 10,2123 20001 DDOUBL
054189,000387: 10,2124 20001 DDOUBL
054190,000388: 10,2125 52131 DXCH BUF
054191,000389:
054192,000390: 10,2126 00006 EXTEND
054193,000391: 10,2127 30745 DCA COSCDUY
054194,000392: 10,2130 52155 DXCH MPAC
054195,000393: 10,2131 07103 TC DMP
054196,000394: 10,2132 00750 ADRES COSCDUX
054197,000395: 10,2133 52155 DXCH MPAC
054198,000396: 10,2134 20001 DDOUBL
054199,000397: 10,2135 20162 DAS MPAC +5
054200,000398:
054201,000399: 10,2136 00006 EXTEND
054202,000400: 10,2137 30737 DCA SINCDUY
054203,000401: 10,2140 52155 DXCH MPAC
054204,000402: 10,2141 07107 TC DMPSUB # ADDRWD SET TO COSCDUX
054205,000403: 10,2142 52155 DXCH MPAC
054206,000404:
![]() |
Page 1267 |
054208,000406: 10,2143 20001 DDOUBL
054209,000407: 10,2144 20131 DAS BUF
054210,000408:
054211,000409: 10,2145 52131 DXCH BUF
054212,000410: 10,2146 52155 DXCH MPAC
054213,000411:
054214,000412: 10,2147 00006 EXTEND
054215,000413: 10,2150 30155 DCA MPAC
054216,000414: 10,2151 50141 INDEX TEM1
054217,000415: 10,2152 52015 DXCH 14 # = SINY COSX + SINX SINZ COSY
054218,000416:
054219,000417: 10,2153 00006 EXTEND
054220,000418: 10,2154 30160 DCA MPAC +3
054221,000419: 10,2155 50141 INDEX TEM1
054222,000420: 10,2156 52017 DXCH 16 # = - SINX COSZ
054223,000421:
054224,000422: 10,2157 00006 EXTEND
054225,000423: 10,2160 30162 DCA MPAC +5
054226,000424: 10,2161 50141 INDEX TEM1
054227,000425: 10,2162 52021 DXCH 20 # = COSX COSY - SINX SINY SINZ
054228,000426:
054229,000427: 10,2163 30141 CA TEM1
054230,000428: 10,2164 54116 TS ADDRWD
054231,000429: 10,2165 00006 EXTEND
054232,000430: 10,2166 30006 DCA Z
054233,000431: 10,2167 64751 AD FOUR
054234,000432: 10,2170 52165 DXCH LOC
054235,000433: 10,2171 34744 CAF BIT8
054236,000434: 10,2172 54023 TS EDOP
054237,000435: 10,2173 17460 TCF VXV
054238,000436: 10,2174 52155 DXCH MPAC
054239,000437: 10,2175 20001 DDOUBL
054240,000438: 10,2176 50141 INDEX TEM1
054241,000439: 10,2177 52007 DXCH 6
054242,000440:
054243,000441: 10,2200 52160 DXCH MPAC +3
054244,000442: 10,2201 20001 DDOUBL
054245,000443: 10,2202 50141 INDEX TEM1
054246,000444: 10,2203 52011 DXCH 10
054247,000445:
054248,000446: 10,2204 52162 DXCH MPAC +5
054249,000447: 10,2205 20001 DDOUBL
054250,000448: 10,2206 50141 INDEX TEM1
054251,000449: 10,2207 52013 DXCH 12
054252,000450:
054253,000451: 10,2210 30142 CA TEM2
054254,000452: 10,2211 54003 TS EBANK
054255,000453: 10,2212 14631 TCF SWRETURN
054256,000454:
End of include-file POWERED_FLIGHT_SUBROUTINES.agc. Parent file is MAIN.agc