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