Source Code

These source-code files are part of a reconstructed copy of LUM69 Revision 2, the flown Apollo 10 Lunar Module (LM) Apollo Guidance Computer (AGC) software.

The reconstruction began with source code of Luminary 69 revision 0 previously transcribed from a digitized copy of that program. The code was then updated by back-porting the R-2 lunar potential model from previously-transcribed source code of Luminary 99. These required changes were described in the original Luminary memos 75 and 78. The reconstructed code was verified by matching memory-bank checksums to those listed in drawing 2021152G. Note that page numbers in the reconstructed code match those on the Luminary 069 printout, although the added code would likely have changed page numbers for a real LUM69 Revision 2 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.

053868,000002:                                                                                                  ## Copyright:   Public domain.
053869,000003:                                                                                                  ## Filename:    POWERED_FLIGHT_SUBROUTINES.agc
053870,000004:                                                                                                  ## Purpose:     A section of LUM69 revision 2.
053871,000005:                                                                                                  ##              It is part of the reconstructed source code for the flown
053872,000006:                                                                                                  ##              version of the flight software for the Lunar Module's (LM)
053873,000007:                                                                                                  ##              Apollo Guidance Computer (AGC) for Apollo 10. The code has
053874,000008:                                                                                                  ##              been recreated from a copy of Luminary revsion 069, using
053875,000009:                                                                                                  ##              changes present in Luminary 099 which were described in
053876,000010:                                                                                                  ##              Luminary memos 75 and 78. The code has been adapted such
053877,000011:                                                                                                  ##              that the resulting bugger words exactly match those specified
053878,000012:                                                                                                  ##              for LUM69 revision 2 in NASA drawing 2021152B, which gives
053879,000013:                                                                                                  ##              relatively high confidence that the reconstruction is correct.
053880,000014:                                                                                                  ## Reference:   pp. 1254-1261
053881,000015:                                                                                                  ## Assembler:   yaYUL
053882,000016:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
053883,000017:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
053884,000018:                                                                                                  ## Mod history: 2019-07-27 MAS  Created from Luminary 69.
053885,000019: 

Page 1254

053887,000021: 14,3711                                           BANK     14                                    #  SAME FBANK AS THE FINDCDUD SUB-PROGRAM
053888,000022: 23,2000                                           SETLOC   POWFLITE                              
053889,000023: 23,2000                                           BANK                                           
053890,000024: 
053891,000025: 23,3443     0142                                  EBANK=   DEXDEX                                
053892,000026: 23,3443                                           COUNT*   $$/POWFL                              
053893,000027: 
053894,000028:                                                                                                  #      CDUTRIG, CDUTRIG1, CDUTRIG2, AND CD*TR*GS ALL COMPUTE THE SINES AND
053895,000029:                                                                                                  #  COSINES OF THREE 2'S COMPLEMENT ANGLES AND PLACE THE RESULT, DOUBLE
053896,000030:                                                                                                  #  PRECISION, IN THE SAME ORDER AS THE INPUTS, AT SINCDU AND COSCDU.   AN
053897,000031:                                                                                                  #  ADDITIONAL OUTPUT IS THE 1'S COMPLEMENT ANGLES AT CDUSPOT.   THESE
053898,000032:                                                                                                  #  ROUTINES GO OUT OF THEIR WAY TO LEAVE THE MPAC AREA AS THEY FIND IT,
053899,000033:                                                                                                  #  EXCEPT FOR THE GENERALLY UNIMPORTANT MPAC +2.  THEY DIFFER ONLY IN
053900,000034:                                                                                                  #  WHERE THEY GET THE ANGLES, AND IN METHOD OF CALLING.
053901,000035: 
053902,000036:                                                                                                  #      CDUTRIG (AND CDUTRIG1, WHICH CAN BE CALLED IN BASIC) COMPUTE THE
053903,000037:                                                                                                  #  SINES AND COSINES FROM THE CURRENT CONTENTS OF THE CDU REGISTERS.
053904,000038:                                                                                                  #  THE CONTENTS OF CDUTEMP, ETC., ARE NOT TOUCHED SO THAT THEY MAY
053905,000039:                                                                                                  #  CONTINUE TO FORM A CONSISTENT SET WITH THE LATEST PIPA READINGS.
053906,000040: 
053907,000041:                                                                                                  #      CDUTRIG1 IS LIKE CDUTRIG EXCEPT THAT IT CAN BE CALLED IN BASIC.
053908,000042: 
053909,000043:                                                                                                  #      CD*TR*GS FINDS CDU VALUES IN CDUSPOT RATHER THAN IN CDUTEMP.   THIS
053910,000044:                                                                                                  #  ALLOWS USERS TO MAKE TRANSFORMATIONS USING ARBITRARY ANGLES, OR REAL
053911,000045:                                                                                                  #  ANGLES IN AN ORDER OTHER THAN X Y Z.   A CALL TO THIS ROUTINE IS
053912,000046:                                                                                                  #  NECESSARY IN PREPARATION FOR A CALL TO AX*SR*T IN EITHER OF ITS TWO
053913,000047:                                                                                                  #  MODES (SMNB OR NBSM).   SINCE AX*SR*T EXPECTS TO FIND THE SINES AND
053914,000048:                                                                                                  #  COSINES IN THE ORDER Y Z X THE ANGLES MUST HAVE BEEN PLACED IN CDUSPOT
053915,000049:                                                                                                  #  IN THIS ORDER.   CD*TR*GS NEED NOT BE REPEATED WHEN AX*SR*T IS CALLED
053916,000050:                                                                                                  #  MORE THAN ONCE, PROVIDED THE ANGLES HAVE NOT CHANGED.   NOTE THAT SINCE
053917,000051:                                                                                                  #  IT CLOBBERS BUF2 (IN THE SINE AND COSINE ROUTINES) CD*TR*GS CANNOT BE
053918,000052:                                                                                                  #  CALLED USING BANKCALL.   SORRY.
053919,000053: 
053920,000054:                                                                                                  #      CD*TR*G IS LIKE CD*TR*GS EXCEPT THAT IT CAN BE CALLED IN
053921,000055:                                                                                                  #  INTERPRETIVE.
053922,000056: 
053923,000057: 23,3443           77776        CDUTRIG            EXIT                                           
053924,000058: 23,3444           03453                           TC       CDUTRIGS                              
053925,000059: 23,3445           06036                           TC       INTPRET                               
053926,000060: 23,3446           77616                           RVQ                                            
053927,000061: 
053928,000062: 23,3447           77776        CD*TR*G            EXIT                                           
053929,000063: 23,3450           03461                           TC       CD*TR*GS                              
053930,000064: 23,3451           06036                           TC       INTPRET                               
053931,000065: 23,3452           77616                           RVQ                                            
053932,000066: 
053933,000067: 23,3453           30032        CDUTRIGS           CA       CDUX                                  
053934,000068: 23,3454           54772                           TS       CDUSPOT    +4                         
053935,000069: 23,3455           30033                           CA       CDUY                                  
053936,000070: 23,3456           54766                           TS       CDUSPOT                               

Page 1255

053938,000072: 23,3457           30034                           CA       CDUZ                                  
053939,000073: 23,3460           54770                           TS       CDUSPOT    +2                         
053940,000074: 
053941,000075: 23,3461           00006        CD*TR*GS           EXTEND                                         
053942,000076: 23,3462           22142                           QXCH     TEM2                                  
053943,000077: 23,3463           34751                           CAF      FOUR                                  
053944,000078: 23,3464           76241        TR*GL**P           MASK     SIX                                   #  MAKE IT EVEN AND SMALLER
053945,000079: 23,3465           54143                           TS       TEM3                                  
053946,000080: 23,3466           50143                           INDEX    TEM3                                  
053947,000081: 23,3467           30766                           CA       CDUSPOT                               
053948,000082: 23,3470           52155                           DXCH     MPAC                                  #  STORING 2'S COMP ANGLE, LOADING MPAC
053949,000083: 23,3471           52127                           DXCH     VBUF       +4                         #  STORING MPAC FOR LATER RESTORATION
053950,000084: 23,3472           04713                           TC       USPRCADR                              
053951,000085: 23,3473           21465                           CADR     CDULOGIC                              
053952,000086: 23,3474           00006                           EXTEND                                         
053953,000087: 23,3475           30155                           DCA      MPAC                                  
053954,000088: 23,3476           50143                           INDEX    TEM3                                  
053955,000089: 23,3477           52767                           DXCH     CDUSPOT                               #  STORING 1'S COMPLEMENT ANGLE
053956,000090: 23,3500           04713                           TC       USPRCADR                              
053957,000091: 23,3501           01517                           CADR     COSINE                                
053958,000092: 23,3502           52155                           DXCH     MPAC                                  
053959,000093: 23,3503           50143                           INDEX    TEM3                                  
053960,000094: 23,3504           52745                           DXCH     COSCDU                                #  STORING COSINE
053961,000095: 23,3505           00006                           EXTEND                                         
053962,000096: 23,3506           50143                           INDEX    TEM3                                  
053963,000097: 23,3507           30767                           DCA      CDUSPOT                               #  LOADING 1'S COMPLEMENT ANGLE
053964,000098: 23,3510           04713                           TC       USPRCADR                              
053965,000099: 23,3511           01531                           CADR     SINE       +1                         #  SINE +1 EXPECTS ARGUMENT IN A AND L
053966,000100: 23,3512           52127                           DXCH     VBUF       +4                         #  BRINGING UP PRIOR MPAC TO BE RESTORED
053967,000101: 23,3513           52155                           DXCH     MPAC                                  
053968,000102: 23,3514           50143                           INDEX    TEM3                                  
053969,000103: 23,3515           52737                           DXCH     SINCDU                                
053970,000104: 23,3516           10143                           CCS      TEM3                                  
053971,000105: 23,3517           13464                           TCF      TR*GL**P                              
053972,000106: 23,3520           00142                           TC       TEM2                                  

Page 1256

053974,000108:                                                                                                  #  ****************************************************************************************************************
053975,000109:                                                                                                  #      QUICTRIG, INTENDED FOR GUIDANCE CYCLE USE WHERE TIME IS CRITICAL, IS A MUCH FASTER VERSION OF CD*TR*GS.
053976,000110:                                                                                                  #  QUICTRIG COMPUTES AND STORES THE SINES AND COSINES OF THE 2'S COMPLEMENT ANGLES AT CDUSPOT, CDUSPOT +2,
053977,000111:                                                                                                  #  AND CDUSPOT +4.   UNLIKE CD*TR*GS, QUICTRIG DOES NOT LEAVE THE 1'S COMPLEMENT VERSIONS OF THE ANGLES IN
053978,000112:                                                                                                  #  CDUSPOT.   QUICTRIG'S EXECUTION TIME IS 4.1 MS;  THIS IS 10 TIMES AS FAST AS CD*TR*GS.    QUICTRIG MAY BE
053979,000113:                                                                                                  #  CALLED FROM INTERPRETIVE AS AN RTB OP-CODE, OR FROM BASIC VIA BANKCALL OR IBNKCALL.
053980,000114: 
053981,000115: 23,3521           00004        QUICTRIG           INHINT                                         #  INHINT SINCE DAP USES THE SAME TEMPS
053982,000116: 23,3522           00006                           EXTEND                                         
053983,000117: 23,3523           22061                           QXCH     ITEMP1                                
053984,000118: 23,3524           34751                           CAF      FOUR                                  
053985,000119: 23,3525           76241                 +4        MASK     SIX                                   
053986,000120: 23,3526           54062                           TS       ITEMP2                                
053987,000121: 23,3527           50062                           INDEX    ITEMP2                                
053988,000122: 23,3530           30766                           CA       CDUSPOT                               
053989,000123: 23,3531           05033                           TC       SPSIN                                 
053990,000124: 23,3532           00006                           EXTEND                                         
053991,000125: 23,3533           74736                           MP       BIT14                                 #  SCALE DOWN TO MATCH INTERPRETER OUTPUTS
053992,000126: 23,3534           50062                           INDEX    ITEMP2                                
053993,000127: 23,3535           52737                           DXCH     SINCDU                                
053994,000128: 23,3536           50062                           INDEX    ITEMP2                                
053995,000129: 23,3537           30766                           CA       CDUSPOT                               
053996,000130: 23,3540           05032                           TC       SPCOS                                 
053997,000131: 23,3541           00006                           EXTEND                                         
053998,000132: 23,3542           74736                           MP       BIT14                                 
053999,000133: 23,3543           50062                           INDEX    ITEMP2                                
054000,000134: 23,3544           52745                           DXCH     COSCDU                                
054001,000135: 23,3545           10062                           CCS      ITEMP2                                
054002,000136: 23,3546           13525                           TCF      QUICTRIG   +4                         
054003,000137: 23,3547           30061                           CA       ITEMP1                                
054004,000138: 23,3550           00003                           RELINT                                         
054005,000139: 23,3551           00000                           TC       A                                     
054006,000140: 

Page 1257

054008,000142:                                                                                                  #  ****************************************************************************************************************
054009,000143:                                                                                                  #      THESE INTERFACE ROUTINES MAKE IT POSSIBLE TO CALL AX*SR*T, ETC., IN
054010,000144:                                                                                                  #  INTERPRETIVE.  LATER, WHERE POSSIBLE, THEY WILL BE ELIMINATED.
054011,000145: 
054012,000146:                                                                                                  #      THESE INTERFACE ROUTINES ARE PERMANENT.   ALL RESTORE USER'S EBANK
054013,000147:                                                                                                  #  SETTING.   ALL ARE STRICT INTERPRETIVE SUBROUTINES, CALLED USING "CALL",
054014,000148:                                                                                                  #  RETURNING VIA QPRET.   ALL EXPECT AND RETURN THE VECTOR TO BE TRANSFOR-
054015,000149:                                                                                                  #  MED INTERPRETER-STYLE IN MPAC; COMPONENTS AT MPAC, MPAC +3, AND MPAC +5.
054016,000150: 
054017,000151:                                                                                                  #       TRG*SMNB AND TRG*NBSM BOTH EXPECT TO SEE THE 2'S COMPLEMENT ANGLES
054018,000152:                                                                                                  #  AT CDUSPOT (ORDER Y Z X, AT CDUSPOT, CDUSPOT +2, AND CDUSPOT +4; ODD
054019,000153:                                                                                                  #  LOCATIONS NEED NOT BE ZEROED).   TRG*NBSM DOES THE NB TO SM TRANSFOR-
054020,000154:                                                                                                  #  MATION;  TRG*SMNB, VICE VERSA.
054021,000155: 
054022,000156:                                                                                                  #      CDU*NBSM DOES ITS TRANSFORMATION USING THE PRESENT CONTENTS OF
054023,000157:                                                                                                  #  THE CDU COUNTERS.   OTHERWISE IT IS LIKE TRG*NBSM.
054024,000158: 
054025,000159:                                                                                                  #      CDU*SMNB IS THE COMPLEMENT OF CDU*NBSM.
054026,000160: 
054027,000161: 23,3552           77776        CDU*SMNB           EXIT                                           
054028,000162: 23,3553           03453                           TC       CDUTRIGS                              
054029,000163: 23,3554           13557                           TCF      C*MM*N1                               
054030,000164: 
054031,000165: 23,3555           77776        TRG*SMNB           EXIT                                           
054032,000166: 23,3556           03461                           TC       CD*TR*GS                              
054033,000167: 23,3557           07531        C*MM*N1            TC       MPACVBUF                              #  AX*SR*T EXPECTS VECTOR IN VBUF
054034,000168: 23,3560           46244                           CS       THREE                                 #  SIGNAL FOR SM TO NB TRANSFORMATION
054035,000169: 23,3561           03601        C*MM*N2            TC       AX*SR*T                               
054036,000170: 23,3562           06036                           TC       INTPRET                               
054037,000171: 23,3563           43575                           VLOAD    RVQ                                   
054038,000172: 23,3564           00123                                    VBUF                                  
054039,000173: 
054040,000174: 23,3565           77776        CDU*NBSM           EXIT                                           
054041,000175: 23,3566           03453                           TC       CDUTRIGS                              
054042,000176: 23,3567           13572                           TCF      C*MM*N3                               
054043,000177: 
054044,000178: 23,3570           77776        TRG*NBSM           EXIT                                           
054045,000179: 23,3571           03461                           TC       CD*TR*GS                              
054046,000180: 23,3572           07531        C*MM*N3            TC       MPACVBUF                              #  FOR AX*SR*T
054047,000181: 23,3573           36244                           CA       THREE                                 #  SIGNAL FOR NB TO SM TRANSFORMATION
054048,000182: 23,3574           13561                           TCF      C*MM*N2                               
054049,000183: 
054050,000184:                                                                                                  #      *NBSM* AND *SMNB* EXPECT TO SEE THE SINES AND COSINES (AT SINCDU
054051,000185:                                                                                                  #  AND COSCDU) RATHER THAN THE ANGLES THEMSELVES.   OTHERWISE THEY ARE
054052,000186:                                                                                                  #  LIKE TRG*NBSM AND TRG*SMNB.
054053,000187: 
054054,000188:                                                                                                  #       NOTE THAT JUST AS CD*TR*GS NEED BE CALLED ONLY ONCE FOR EACH SERIES
054055,000189:                                                                                                  #  OF TRANSFORMATIONS USING THE SAME ANGLES, SO TOO ONLY ONE OF TRG*NBSM

Page 1258

054057,000191:                                                                                                  #  AND TRG*SMNB NEED BE CALLED FOR EACH SERIES.   FOR SUBSEQUENT TRANSFOR-
054058,000192:                                                                                                  #  MATIONS USE *NBSM* AND *SMNB*.
054059,000193: 
054060,000194: 23,3575           77776        *SMNB*             EXIT                                           
054061,000195: 23,3576           13557                           TCF      C*MM*N1                               
054062,000196: 
054063,000197: 23,3577           77776        *NBSM*             EXIT                                           
054064,000198: 23,3600           13572                           TCF      C*MM*N3                               
054065,000199: 
054066,000200:                                                                                                  #        AX*SR*T COMBINES THE OLD SMNB AND NBSM.   FOR THE NB TO SM
054067,000201:                                                                                                  #  TRANSFORMATION, ENTER WITH +3 IN A.   FOR SM TO NB, ENTER WITH -3.
054068,000202:                                                                                                  #  THE VECTOR TO BE TRANSFORMED ARRIVES, AND IS RETURNED, IN VBUF.
054069,000203:                                                                                                  #  AX*SR*T EXPECTS TO FIND THE SINES AND COSINES OF THE ANGLES OF ROTATION
054070,000204:                                                                                                  #  AT SINCDU AND COSCDU, IN THE ORDER Y Z X.  A CALL TO CD*TR*GS, WITH
054071,000205:                                                                                                  #  THE 2'S COMPLEMENT ANGLES (ORDER Y Z X) AT CDUSPOT, WILL TAKE CARE OF
054072,000206:                                                                                                  #  THIS.  HERE IS A SAMPLE CALLING SEQUENCE:-
054073,000207:                                                                                                  #                TC      CDUTRIGS
054074,000208:                                                                                                  #                CS      THREE           ("CA THREE" FOR NBSM)
054075,000209:                                                                                                  #                TC      AX*SR*T
054076,000210:                                                                                                  #  THE CALL TO CD*TR*GS NEED NOT BE REPEATED, WHEN AX*SR*T IS CALLED MORE
054077,000211:                                                                                                  #  THAN ONCE, UNLESS THE ANGLES HAVE CHANGED.
054078,000212: 
054079,000213:                                                                                                  #      AX*SR*T IS GUARANTEED SAFE ONLY FOR VECTORS OF MAGNITUDE LESS THAN
054080,000214:                                                                                                  #  UNITY.   A LOOK AT THE CASE IN WHICH A VECTOR OF GREATER MAGNITUDE
054081,000215:                                                                                                  #  HAPPENS TO LIE ALONG AN AXIS OF THE SYSTEM TO WHICH IT IS TO BE TRANS-
054082,000216:                                                                                                  #  FORMED CONVINCES ONE THAT THIS IS A RESTRICTION WHICH MUST BE ACCEPTED.
054083,000217: 
054084,000218: 23,3601           54142        AX*SR*T            TS       DEXDEX                                #  WHERE IT BECOMES THE INDEX OF INDEXES
054085,000219: 23,3602           00006                           EXTEND                                         
054086,000220: 23,3603           22145                           QXCH     RTNSAVER                              
054087,000221: 
054088,000222: 23,3604           10142        R*TL**P            CCS      DEXDEX                                #                +3 --> 0        -3 --> 2
054089,000223: 23,3605           40142                           CS       DEXDEX                                #  THUS:         +2 --> 1        -2 --> 1
054090,000224: 23,3606           66244                           AD       THREE                                 #                +1 --> 2        -1 --> 0
054091,000225: 23,3607           00006                           EXTEND                                         
054092,000226: 23,3610           50000                           INDEX    A                                     
054093,000227: 23,3611           33670                           DCA      INDEXI                                
054094,000228: 23,3612           52144                           DXCH     DEXI                                  
054095,000229: 
054096,000230: 23,3613           34753                           CA       ONE                                   
054097,000231: 23,3614           54130                           TS       BUF                                   
054098,000232: 23,3615           00006                           EXTEND                                         
054099,000233: 23,3616           50143                           INDEX    DEX1                                  
054100,000234: 23,3617           40123                           DCS      VBUF                                  
054101,000235: 23,3620           13622                           TCF      LOOP1                                 #  REALLY BE A SUBTRACT, AND VICE VERSA
054102,000236: 
054103,000237: 23,3621           52131        LOOP2              DXCH     BUF                                   #  LOADING VECTOR COMPONENT, STORING INDEX

Page 1259

054105,000239: 23,3622           52155        LOOP1              DXCH     MPAC                                  
054106,000240: 23,3623           33666                           CA       SINSLOC                               
054107,000241: 23,3624           60143                           AD       DEX1                                  
054108,000242: 23,3625           54116                           TS       ADDRWD                                
054109,000243: 
054110,000244: 23,3626           07106                           TC       DMPSUB                                #  MULTIPLY BY SIN(CDUANGLE)
054111,000245: 23,3627           10142                           CCS      DEXDEX                                
054112,000246: 23,3630           52155                           DXCH     MPAC                                  #  NBSM CASE
054113,000247: 23,3631           13634                           TCF      +3                                    
054114,000248: 23,3632           00006                           EXTEND                                         #  SMNB CASE
054115,000249: 23,3633           40155                           DCS      MPAC                                  
054116,000250: 23,3634           52160                           DXCH     TERM1TMP                              
054117,000251: 
054118,000252: 23,3635           36241                           CA       SIX                                   #  SINCDU AND COSCDU (EACH 6 WORDS) MUST
054119,000253: 23,3636           26116                           ADS      ADDRWD                                #    BE CONSECUTIVE AND IN THAT ORDER
054120,000254: 
054121,000255: 23,3637           00006                           EXTEND                                         
054122,000256: 23,3640           50130                           INDEX    BUF                                   
054123,000257: 23,3641           50143                           INDEX    DEX1                                  
054124,000258: 23,3642           30123                           DCA      VBUF                                  
054125,000259: 23,3643           52155                           DXCH     MPAC                                  
054126,000260: 23,3644           07106                           TC       DMPSUB                                #  MULTIPLY BY COS(CDUANGLE)
054127,000261: 23,3645           52155                           DXCH     MPAC                                  
054128,000262: 23,3646           20160                           DAS      TERM1TMP                              
054129,000263: 23,3647           52160                           DXCH     TERM1TMP                              
054130,000264: 23,3650           20001                           DDOUBL                                         
054131,000265: 23,3651           50130                           INDEX    BUF                                   
054132,000266: 23,3652           50143                           INDEX    DEX1                                  
054133,000267: 23,3653           52123                           DXCH     VBUF                                  
054134,000268: 23,3654           52131                           DXCH     BUF                                   #  LOADING INDEX, STORING VECTOR COMPONENT
054135,000269: 
054136,000270: 23,3655           10000                           CCS      A                                     #  'CAUSE THAT'S WHERE THE INDEX NOW IS
054137,000271: 23,3656           13621                           TCF      LOOP2                                 
054138,000272: 
054139,000273: 23,3657           00006                           EXTEND                                         
054140,000274: 23,3660           26142                           DIM      DEXDEX                                #  DECREMENT MAGNITUDE PRESERVING SIGN
054141,000275: 
054142,000276: 23,3661           10142        TSTPOINT           CCS      DEXDEX                                #  ONLY THE BRANCHING FUNCTION IS USED
054143,000277: 23,3662           13604                           TCF      R*TL**P                               
054144,000278: 23,3663           00145                           TC       RTNSAVER                              
054145,000279: 23,3664           13604                           TCF      R*TL**P                               
054146,000280: 23,3665           00145                           TC       RTNSAVER                              
054147,000281: 
054148,000282: 23,3666           00736        SINSLOC            ADRES    SINCDU                                #  FOR USE IN SETTING ADDRWD
054149,000283: 
054150,000284: 23,3667           00004        INDEXI             DEC      4          B-14                       #  **********   DON'T   **********
054151,000285: 23,3670           00002                           DEC      2          B-14                       #  **********   TOUCH   **********
054152,000286: 23,3671           00000                           DEC      0          B-14                       #  **********   THESE   **********

Page 1260

054154,000288: 23,3672           00004                           DEC      4          B-14                       #  ********** CONSTANTS **********
054155,000289: 
054156,000290:                                                                                                  #  ****************************************************************************************************************

Page 1261

054158,000292:                                                                                                  #  THIS SUBROUTINE COMPUTES INCREMENTAL CHANGES IN CDU(GIMBAL) ANGLES FROM INCREMENTAL CHANGES ABOUT SM AXES. IT
054159,000293:                                                                                                  #  REQUIRES SM INCREMENTS AS A DP VECTOR SCALED AT ONE REVOLUTION(DTHETASM,+2,+4).  SIN,COS(CDUY,Z,X) ARE IN
054160,000294:                                                                                                  #  SINCDU,+2,+4 AND COSCDU,+2,+4 RESPECTIVELY,SCALED TO ONE HALF. CDU INCREENTS ARE PLACED IN DCDU,+2,+4 SCALED TO
054161,000295:                                                                                                  #  ONE REVOLUTION.
054162,000296: 
054163,000297:                                                                                                  #         *  COS(IGA)SEC(MGA)          0           -SIN(IGA)SEC(MGA) *
054164,000298:                                                                                                  #         *                                                          *
054165,000299:                                                                                                  #         * -COS(IGA)TAN(MGA)          1            SIN(IGA)TAN(MGA) *
054166,000300:                                                                                                  #         *                                                          *
054167,000301:                                                                                                  #         *      SIN(IGA)              0                COS(IGA)     *
054168,000302: 
054169,000303: 14,3711                                           BANK     14                                    
054170,000304: 23,2000                                           SETLOC   POWFLIT1                              
054171,000305: 23,2000                                           BANK                                           
054172,000306: 23,3673           41345        SMCDURES           DLOAD    DMP                                   
054173,000307: 23,3674           01265                                    DTHETASM                              
054174,000308: 23,3675           00745                                    COSCDUY                               
054175,000309: 
054176,000310: 23,3676           41325                           PDDL     DMP                                   
054177,000311: 23,3677           01271                                    DTHETASM   +4                         
054178,000312: 23,3700           00737                                    SINCDUY                               
054179,000313: 
054180,000314: 23,3701           77621                           BDSU                                           
054181,000315: 23,3702           77671                           DDV                                            
054182,000316: 23,3703           00747                                    COSCDUZ                               
054183,000317: 23,3704           03234                           STORE    DCDU                                  
054184,000318: 
054185,000319: 23,3705           72405                           DMP      SL1                                   #  SCALE
054186,000320: 23,3706           00741                                    SINCDUZ                               
054187,000321: 23,3707           77621                           BDSU                                           
054188,000322: 
054189,000323: 23,3710           01267                                    DTHETASM   +2                         
054190,000324: 23,3711           17236                           STODL    DCDU       +2                         
054191,000325: 23,3712           01265                                    DTHETASM                              
054192,000326: 
054193,000327: 23,3713           65205                           DMP      PDDL                                  
054194,000328: 23,3714           00737                                    SINCDUY                               
054195,000329: 23,3715           01271                                    DTHETASM   +4                         
054196,000330: 
054197,000331: 23,3716           43205                           DMP      DAD                                   
054198,000332: 23,3717           00745                                    COSCDUY                               
054199,000333: 23,3720           77752                           SL1                                            
054200,000334: 23,3721           03240                           STORE    DCDU       +4                         
054201,000335: 23,3722           77616                           RVQ                                            
054202,000336: 

End of include-file POWERED_FLIGHT_SUBROUTINES.agc.  Parent file is MAIN.agc