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