Source Code

These source-code files are part of a reconstructed copy of Artemis 071, the first release of the Apollo 15 through 17 Command Module (CM) Apollo Guidance Computer (AGC) software.

The reconstruction began with source code of Artemis 072 previously transcribed from a digitized copy of that program. The code was then updated by undoing changes between the two versions. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021154-. Note that page numbers in the reconstructed code match those on the Artemis 072 printout, although the changed code would likely have changed page numbers for a real Artemis 071 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.

017788,000002:                                                                                                  ## Copyright:   Public domain.
017789,000003:                                                                                                  ## Filename:    ANGLFIND.agc
017790,000004:                                                                                                  ## Purpose:     A section of Artemis revision 071.
017791,000005:                                                                                                  ##              It is part of the reconstructed source code for the first
017792,000006:                                                                                                  ##              release of the flight software for the Command Module's
017793,000007:                                                                                                  ##              (CM) Apollo Guidance Computer (AGC) for Apollo 15 through
017794,000008:                                                                                                  ##              17. The code has been recreated from a copy of Artemis 072.
017795,000009:                                                                                                  ##              It has been adapted such that the resulting bugger words
017796,000010:                                                                                                  ##              exactly match those specified for Artemis 071 in NASA
017797,000011:                                                                                                  ##              drawing 2021154-, which gives relatively high confidence
017798,000012:                                                                                                  ##              that the reconstruction is correct.
017799,000013:                                                                                                  ## Reference:   403
017800,000014:                                                                                                  ## Assembler:   yaYUL
017801,000015:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
017802,000016:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
017803,000017:                                                                                                  ## Mod history: 2019-08-14 MAS  Created from Artemis 072.
017804,000018:                                                                                                  ##              2021-05-30 ABS  ENDOCM -> ENDDCM
017805,000019: 

Page 403

017807,000021: 22,2000                                           SETLOC   KALCMON1                              
017808,000022: 22,2000                                           BANK                                           
017809,000023: 
017810,000024: 22,2000  E6,1661                                  EBANK=   BCDU                                  
017811,000025: 
017812,000026: 22,2000                                           COUNT*   $$/KALC                               
017813,000027: 22,2000           06006        KALCMAN3           TC       INTPRET                               
017814,000028: 22,2001           77634                 +1        RTB                                            
017815,000029: 22,2002           44370                                    READCDUK                              #  PICK UP CURRENT CDU ANGLES
017816,000030: 22,2003           03262                           STORE    BCDU                                  #  STORE THE INITIAL S/C ANGLES
017817,000031: 22,2004           72364                           AXC,2    TLOAD                                 #  COMPUTE THE TRANSFORMATION FROM
017818,000032: 22,2005           03320                                    MIS                                   #  INITIAL S/C AXES TO STABLE MEMBER AXES
017819,000033: 22,2006           03262                                    BCDU                                  #  (MIS)
017820,000034: 22,2007           77624                           CALL                                           
017821,000035: 22,2010           44377                                    CDUTODCM                              
017822,000036: 22,2011           72364                           AXC,2    TLOAD                                 #  COMPUTE THE TRANSFORMATION FROM
017823,000037: 22,2012           03425                                    MFS                                   #  FINAL S/C AXES TO STABLE MEMBER AXES
017824,000038: 22,2013           01310                                    CPHI                                  #  (MFS)
017825,000039: 22,2014           77624                           CALL                                           
017826,000040: 22,2015           44377                                    CDUTODCM                              
017827,000041: 22,2016           45160        SECAD              AXC,1    CALL                                  #  MIS AND MFS ARRAYS CALCULATED         $2
017828,000042: 22,2017           03320                                    MIS                                   
017829,000043: 22,2020           44334                                    TRANSPOS                              
017830,000044: 22,2021           77775                           VLOAD                                          
017831,000045: 22,2022           77626                           STADR                                          
017832,000046: 22,2023           50474                           STOVL    TMIS       +12D                       
017833,000047: 22,2024           77626                           STADR                                          
017834,000048: 22,2025           50502                           STOVL    TMIS       +6                         
017835,000049: 22,2026           77626                           STADR                                          
017836,000050: 22,2027           74510                           STORE    TMIS                                  #  TMIS = TRANSPOSE(MIS) SCALED BY 2
017837,000051: 22,2030           75160                           AXC,1    AXC,2                                 
017838,000052: 22,2031           03266                                    TMIS                                  
017839,000053: 22,2032           03425                                    MFS                                   
017840,000054: 22,2033           77624                           CALL                                           
017841,000055: 22,2034           44304                                    MXM3                                  
017842,000056: 22,2035           45575                           VLOAD    STADR                                 
017843,000057: 22,2036           50335                           STOVL    MFI        +12D                       
017844,000058: 22,2037           77626                           STADR                                          
017845,000059: 22,2040           50343                           STOVL    MFI        +6                         
017846,000060: 22,2041           77626                           STADR                                          
017847,000061: 22,2042           74351                           STORE    MFI                                   #  MFI = TMIS MFS (SCALED BY 4)
017848,000062: 22,2043           45001                           SETPD    CALL                                  #  TRANSPOSE MFI IN PD LIST
017849,000063: 22,2044           00023                                    18D                                   
017850,000064: 22,2045           44343                                    TRNSPSPD                              
017851,000065: 22,2046           45575                           VLOAD    STADR                                 
017852,000066: 22,2047           50474                           STOVL    TMFI       +12D                       
017853,000067: 22,2050           77626                           STADR                                          
017854,000068: 22,2051           50502                           STOVL    TMFI       +6                         
017855,000069: 22,2052           77626                           STADR                                          
017856,000070: 22,2053           74510                           STORE    TMFI                                  #  TMFI = TRANSPOSE (MFI) SCALED BY 4

Page 404

017858,000072: 
017859,000073:                                                                                                  #  CALCULATE COFSKEW AND MFISYM
017860,000074: 
017861,000075: 22,2054           45345                           DLOAD    DSU                                   
017862,000076: 22,2055           03271                                    TMFI       +2                         
017863,000077: 22,2056           03430                                    MFI        +2                         
017864,000078: 22,2057           45325                           PDDL     DSU                                   #  CALCULATE COF SCALED BY 2/SIN(AM)
017865,000079: 22,2060           03432                                    MFI        +4                         
017866,000080: 22,2061           03273                                    TMFI       +4                         
017867,000081: 22,2062           45325                           PDDL     DSU                                   
017868,000082: 22,2063           03301                                    TMFI       +10D                       
017869,000083: 22,2064           03440                                    MFI        +10D                       
017870,000084: 22,2065           77666                           VDEF                                           
017871,000085: 22,2066           03311                           STORE    COFSKEW                               #  EQUALS MFISKEW
017872,000086: 
017873,000087:                                                                                                  #  CALCULATE AM AND PROCEED ACCORDING TO ITS MAGNITUDE
017874,000088: 
017875,000089: 22,2067           43345                           DLOAD    DAD                                   
017876,000090: 22,2070           03426                                    MFI                                   
017877,000091: 22,2071           03446                                    MFI        +16D                       
017878,000092: 22,2072           43225                           DSU      DAD                                   
017879,000093: 22,2073           15326                                    DP1/4TH                               
017880,000094: 22,2074           03436                                    MFI        +8D                        
017881,000095: 22,2075           03317                           STORE    CAM                                   #  CAM = (MFI0+MFI4+MFI8-1)/2 HALF SCALE
017882,000096: 22,2076           77726                           ARCCOS                                         
017883,000097: 22,2077           03365                           STORE    AM                                    #  AM=ARCCOS(CAM)  (AM SCALED BY 2)
017884,000098: 22,2100           51025                           DSU      BPL                                   
017885,000099: 22,2101           04367                                    MINANG                                
017886,000100: 22,2102           44111                                    CHECKMAX                              
017887,000101: 22,2103           77776                           EXIT                                           #  MANEUVER LESS THAN 0.25 DEG
017888,000102: 22,2104           00004                           INHINT                                         #  GO DIRECTLY INTO ATTITUDE HOLD
017889,000103: 22,2105           44770                           CS       ONE                                   #  ABOUT COMMANDED ANGLES
017890,000104: 22,2106           55340                           TS       HOLDFLAG                              #  NOGO WILL STOP ANY RATE AND SET UP FOR A
017891,000105: 22,2107           03163                           TC       LOADCDUD                              #  GOOD RETURN
017892,000106: 22,2110           12723                           TCF      NOGO                                  
017893,000107: 
017894,000108: 22,2111           45345        CHECKMAX           DLOAD    DSU                                   
017895,000109: 22,2112           03365                                    AM                                    
017896,000110: 22,2113           04370                                    MAXANG                                
017897,000111: 22,2114           77244                           BPL      VLOAD                                 
017898,000112: 22,2115           44123                                    ALTCALC                               #  UNIT
017899,000113: 22,2116           03311                                    COFSKEW                               #  COFSKEW
017900,000114: 22,2117           77656                           UNIT                                           
017901,000115: 22,2120           03343                           STORE    COF                                   #  COF IS THE MANEUVER AXIS
017902,000116: 22,2121           77650                           GOTO                                           #  SEE IF MANEUVER GOES THRU GIMBAL LOCK
017903,000117: 22,2122           44745                                    LOCSKIRT                              
017904,000118: 22,2123           53375        ALTCALC            VLOAD    VAD                                   #  IF AM GREATER THAN 170 DEGREES
017905,000119: 22,2124           03426                                    MFI                                   
017906,000120: 22,2125           03267                                    TMFI                                  
017907,000121: 22,2126           77762                           VSR1                                           

Page 405

017909,000123: 22,2127           27267                           STOVL    MFISYM                                
017910,000124: 22,2130           03434                                    MFI        +6                         
017911,000125: 22,2131           74455                           VAD      VSR1                                  
017912,000126: 22,2132           03275                                    TMFI       +6                         
017913,000127: 22,2133           27275                           STOVL    MFISYM     +6                         
017914,000128: 22,2134           03442                                    MFI        +12D                       
017915,000129: 22,2135           74455                           VAD      VSR1                                  
017916,000130: 22,2136           03303                                    TMFI       +12D                       
017917,000131: 22,2137           03303                           STORE    MFISYM     +12D                       #  MFISYM=(MFI+TMFI)/2   SCALED BY 4
017918,000132: 
017919,000133: 
017920,000134:                                                                                                  #  CALCULATE COF
017921,000135: 
017922,000136: 22,2140           70545                           DLOAD    SR1                                   
017923,000137: 22,2141           03317                                    CAM                                   
017924,000138: 22,2142           45325                           PDDL     DSU                                   #  PD0 CAM                              $4
017925,000139: 22,2143           15334                                    DPHALF                                
017926,000140: 22,2144           03317                                    CAM                                   
017927,000141: 22,2145           65204                           BOVB     PDDL                                  #  PD2 1 - CAM                          $2
017928,000142: 22,2146           45761                                    SIGNMPAC                              
017929,000143: 22,2147           03307                                    MFISYM     +16D                       
017930,000144: 22,2150           56225                           DSU      DDV                                   
017931,000145: 22,2151           00001                                    0                                     
017932,000146: 22,2152           00003                                    2                                     
017933,000147: 22,2153           65366                           SQRT     PDDL                                  #  COFZ = SQRT(MFISYM8-CAM)/1-CAM)
017934,000148: 22,2154           03277                                    MFISYM     +8D                        #                                 $ ROOT 2
017935,000149: 22,2155           56225                           DSU      DDV                                   
017936,000150: 22,2156           00001                                    0                                     
017937,000151: 22,2157           00003                                    2                                     
017938,000152: 22,2160           65366                           SQRT     PDDL                                  #  COFY = SQRT(MFISYM4-CAM)/(1-CAM)  $ROOT2
017939,000153: 22,2161           03267                                    MFISYM                                
017940,000154: 22,2162           56225                           DSU      DDV                                   
017941,000155: 22,2163           00001                                    0                                     
017942,000156: 22,2164           00003                                    2                                     
017943,000157: 22,2165           55566                           SQRT     VDEF                                  #  COFX = SQRT(MFISYM-CAM)/(1-CAM)  $ROOT 2
017944,000158: 22,2166           77656                           UNIT                                           
017945,000159: 22,2167           03343                           STORE    COF                                   
017946,000160: 
017947,000161:                                                                                                  #  DETERMINE LARGEST COF AND ADJUST ACCORDINGLY
017948,000162: 
017949,000163: 22,2170           45345        COFMAXGO           DLOAD    DSU                                   
017950,000164: 22,2171           03343                                    COF                                   
017951,000165: 22,2172           03345                                    COF        +2                         
017952,000166: 22,2173           71240                           BMN      DLOAD                                 #  COFY G COFX
017953,000167: 22,2174           44203                                    COMP12                                
017954,000168: 22,2175           03343                                    COF                                   
017955,000169: 22,2176           50025                           DSU      BMN                                   
017956,000170: 22,2177           03347                                    COF        +4                         
017957,000171: 22,2200           44260                                    METHOD3                               #  COFZ G COFX OR COFY
017958,000172: 22,2201           77650                           GOTO                                           

Page 406

017960,000174: 22,2202           44234                                    METHOD1                               #  COFX G COFY OR COFZ
017961,000175: 22,2203           45345        COMP12             DLOAD    DSU                                   
017962,000176: 22,2204           03345                                    COF        +2                         
017963,000177: 22,2205           03347                                    COF        +4                         
017964,000178: 22,2206           77640                           BMN                                            
017965,000179: 22,2207           44260                                    METHOD3                               #  COFZ G COFY OR COFX
017966,000180: 
017967,000181: 22,2210           51145        METHOD2            DLOAD    BPL                                   #  COFY MAX
017968,000182: 22,2211           03313                                    COFSKEW    +2                         #  UY
017969,000183: 22,2212           44216                                    U2POS                                 
017970,000184: 22,2213           57575                           VLOAD    VCOMP                                 
017971,000185: 22,2214           03343                                    COF                                   
017972,000186: 22,2215           03343                           STORE    COF                                   
017973,000187: 22,2216           51145        U2POS              DLOAD    BPL                                   
017974,000188: 22,2217           03271                                    MFISYM     +2                         #  UX UY
017975,000189: 22,2220           44224                                    OKU21                                 
017976,000190: 22,2221           57545                           DLOAD    DCOMP                                 #  SIGN OF UX OPPOSITE TO UY
017977,000191: 22,2222           03343                                    COF                                   
017978,000192: 22,2223           03343                           STORE    COF                                   
017979,000193: 22,2224           51145        OKU21              DLOAD    BPL                                   
017980,000194: 22,2225           03301                                    MFISYM     +10D                       #  UY UZ
017981,000195: 22,2226           44745                                    LOCSKIRT                              
017982,000196: 22,2227           57545                           DLOAD    DCOMP                                 #  SIGN OF UZ OPPOSITE TO UY
017983,000197: 22,2230           03347                                    COF        +4                         
017984,000198: 22,2231           03347                           STORE    COF        +4                         
017985,000199: 22,2232           77650                           GOTO                                           
017986,000200: 22,2233           44745                                    LOCSKIRT                              
017987,000201: 22,2234           51145        METHOD1            DLOAD    BPL                                   #  COFX MAX
017988,000202: 22,2235           03311                                    COFSKEW                               #  UX
017989,000203: 22,2236           44242                                    U1POS                                 
017990,000204: 22,2237           57575                           VLOAD    VCOMP                                 
017991,000205: 22,2240           03343                                    COF                                   
017992,000206: 22,2241           03343                           STORE    COF                                   
017993,000207: 22,2242           51145        U1POS              DLOAD    BPL                                   
017994,000208: 22,2243           03271                                    MFISYM     +2                         #  UX UY
017995,000209: 22,2244           44250                                    OKU12                                 
017996,000210: 22,2245           57545                           DLOAD    DCOMP                                 
017997,000211: 22,2246           03345                                    COF        +2                         #  SIGN OF UY OPPOSITE TO UX
017998,000212: 22,2247           03345                           STORE    COF        +2                         
017999,000213: 22,2250           51145        OKU12              DLOAD    BPL                                   
018000,000214: 22,2251           03273                                    MFISYM     +4                         #  UX UZ
018001,000215: 22,2252           44745                                    LOCSKIRT                              
018002,000216: 22,2253           57545                           DLOAD    DCOMP                                 #  SIGN OF UZ OPPOSITE TO UY
018003,000217: 22,2254           03347                                    COF        +4                         
018004,000218: 22,2255           03347                           STORE    COF        +4                         
018005,000219: 22,2256           77650                           GOTO                                           
018006,000220: 22,2257           44745                                    LOCSKIRT                              
018007,000221: 22,2260           51145        METHOD3            DLOAD    BPL                                   #  COFZ MAX
018008,000222: 22,2261           03315                                    COFSKEW    +4                         #  UZ
018009,000223: 22,2262           44266                                    U3POS                                 

Page 407

018011,000225: 22,2263           57575                           VLOAD    VCOMP                                 
018012,000226: 22,2264           03343                                    COF                                   
018013,000227: 22,2265           03343                           STORE    COF                                   
018014,000228: 22,2266           51145        U3POS              DLOAD    BPL                                   
018015,000229: 22,2267           03273                                    MFISYM     +4                         #  UX UZ
018016,000230: 22,2270           44274                                    OKU31                                 
018017,000231: 22,2271           57545                           DLOAD    DCOMP                                 
018018,000232: 22,2272           03343                                    COF                                   #  SIGN OF UX OPPOSITE TO UZ
018019,000233: 22,2273           03343                           STORE    COF                                   
018020,000234: 22,2274           51145        OKU31              DLOAD    BPL                                   
018021,000235: 22,2275           03301                                    MFISYM     +10D                       #  UY UZ
018022,000236: 22,2276           44745                                    LOCSKIRT                              
018023,000237: 22,2277           57545                           DLOAD    DCOMP                                 
018024,000238: 22,2300           03345                                    COF        +2                         #  SIGN OF UY OPPOSITE TO UZ
018025,000239: 22,2301           03345                           STORE    COF        +2                         
018026,000240: 22,2302           77650                           GOTO                                           
018027,000241: 22,2303           44745                                    LOCSKIRT                              
018028,000242: 

Page 408

018030,000244:                                                                                                  #  MATRIX OPERATIONS
018031,000245: 
018032,000246: 22,2304           77601        MXM3               SETPD                                          #  MXM3 MULTIPLIES 2 3X3 MATRICES
018033,000247: 22,2305           00001                                    0                                     #  AND LEAVES RESULT IN PD LIST
018034,000248: 22,2306           64743                           DLOAD*   PDDL*                                 #  ADDRESS OF 1ST MATRIX IN XR1
018035,000249: 22,2307           77762                                    12D,2                                 #  ADDRESS OF 2ND MATRIX IN XR2
018036,000250: 22,2310           77770                                    6,2                                   
018037,000251: 22,2311           55523                           PDDL*    VDEF                                  #  DEFINE VECTOR M2(COL 1)
018038,000252: 22,2312           77776                                    0,2                                   
018039,000253: 22,2313           64717                           MXV*     PDDL*                                 #  M1XM2(COL 1) IN PD
018040,000254: 22,2314           00001                                    0,1                                   
018041,000255: 22,2315           77760                                    14D,2                                 
018042,000256: 22,2316           64723                           PDDL*    PDDL*                                 
018043,000257: 22,2317           77766                                    8D,2                                  
018044,000258: 22,2320           77774                                    2,2                                   
018045,000259: 22,2321           63666                           VDEF     MXV*                                  #  DEFINE VECTOR M2(COL 2)
018046,000260: 22,2322           00001                                    0,1                                   
018047,000261: 22,2323           64723                           PDDL*    PDDL*                                 #  M1XM2(COL2) IN PD
018048,000262: 22,2324           77756                                    16D,2                                 
018049,000263: 22,2325           77764                                    10D,2                                 
018050,000264: 22,2326           55523                           PDDL*    VDEF                                  #  DEFINE VECTOR M2(COL 3)
018051,000265: 22,2327           77772                                    4,2                                   
018052,000266: 22,2330           41517                           MXV*     PUSH                                  #  M1XM2(COL 3) IN PD
018053,000267: 22,2331           00001                                    0,1                                   
018054,000268: 22,2332           77650                           GOTO                                           
018055,000269: 22,2333           44343                                    TRNSPSPD                              #  REVERSE ROWS AND COLS IN PD AND
018056,000270:                                                                                                  #                                        RETURN WITH M1XM2 IN PD LIST
018057,000271: 
018058,000272: 22,2334           76601        TRANSPOS           SETPD    VLOAD*                                #  TRANSPOS TRANSPOSES A 3X3 MATRIX
018059,000273: 22,2335           00001                                    0                                     #   AND LEAVES RESULT IN PD LIST
018060,000274: 22,2336           00001                                    0,1                                   #  MATRIX ADDRESS IN XR1
018061,000275: 22,2337           62713                           PDVL*    PDVL*                                 
018062,000276: 22,2340           00007                                    6,1                                   
018063,000277: 22,2341           00015                                    12D,1                                 
018064,000278: 22,2342           77606                           PUSH                                           #  MATRIX IN PD
018065,000279: 22,2343           65345        TRNSPSPD           DLOAD    PDDL                                  #  ENTER WITH MATRIX IN PD LIST
018066,000280: 22,2344           00003                                    2                                     
018067,000281: 22,2345           00007                                    6                                     
018068,000282: 22,2346           14003                           STODL    2                                     
018069,000283: 22,2347           77626                           STADR                                          
018070,000284: 22,2350           63770                           STODL    6                                     
018071,000285: 22,2351           00005                                    4                                     
018072,000286: 22,2352           77725                           PDDL                                           
018073,000287: 22,2353           00015                                    12D                                   
018074,000288: 22,2354           14005                           STODL    4                                     
018075,000289: 22,2355           77626                           STADR                                          
018076,000290: 22,2356           63762                           STODL    12D                                   
018077,000291: 22,2357           00013                                    10D                                   
018078,000292: 22,2360           77725                           PDDL                                           

Page 409

018080,000294: 22,2361           00017                                    14D                                   
018081,000295: 22,2362           14013                           STODL    10D                                   
018082,000296: 22,2363           77626                           STADR                                          
018083,000297: 22,2364           77760                           STORE    14D                                   
018084,000298: 22,2365           77616                           RVQ                                            #  RETURN WITH TRANSPOSED MATRIX IN PD LIST
018085,000299: 22,2366           00013        MINANG             DEC      .00069375                             
018086,000300: 22,2367           17071        MAXANG             DEC      .472222                               
018087,000301: 22,2370           00004        READCDUK           INHINT                                         #  LOAD T(MPAC) WITH THE CURRENT CDU ANGLES
018088,000302: 22,2371           30034                           CA       CDUZ                                  
018089,000303: 22,2372           54156                           TS       MPAC       +2                         
018090,000304: 22,2373           00006                           EXTEND                                         
018091,000305: 22,2374           30033                           DCA      CDUX                                  
018092,000306: 22,2375           00003                           RELINT                                         
018093,000307: 22,2376           16445                           TCF      TLOAD      +6                         
018094,000308: 22,2000                                           SETLOC   KALCMON2                              
018095,000309: 22,2000                                           BANK                                           
018096,000310: 
018097,000311: 22,2377                                           COUNT*   $$/KALC                               
018098,000312: 
018099,000313: 22,2377           66370        CDUTODCM           AXT,1    SSP                                   #  SUBROUTINE TO COMPUTE  DIRECTION COSINE
018100,000314: 22,2400           00003                           OCT      3                                     #  MATRIX RELATING S/C AXES TO STABLE
018101,000315: 22,2401           00051                                    S1                                    #  MEMBER AXES FROM 3 CDU ANGLES IN T(MPAC)
018102,000316: 22,2402           00001                           OCT      1                                     #  SET XR1, S1 AND PD FOR LOOP
018103,000317: 22,2403           00010                           STORE    7                                     
018104,000318: 22,2404           77601                           SETPD                                          
018105,000319: 22,2405           00001                                    0                                     
018106,000320: 22,2406           47133        LOOPSIN            SLOAD*   RTB                                   
018107,000321: 22,2407           00013                                    10D,1                                 
018108,000322: 22,2410           51754                                    CDULOGIC                              
018109,000323: 22,2411           00013                           STORE    10D                                   #  LOAD PD WITH 0 SIN(PHI)
018110,000324: 22,2412           65356                           SIN      PDDL                                  #               2 COS(PHI)
018111,000325: 22,2413           00013                                    10D                                   #               4 SIN(THETA)
018112,000326: 22,2414           41546                           COS      PUSH                                  #               6 COS(THETA)
018113,000327: 22,2415           71300                           TIX,1    DLOAD                                 #               8 SIN(PSI)
018114,000328: 22,2416           44406                                    LOOPSIN                               #              10 COS(PSI)
018115,000329: 22,2417           00007                                    6                                     
018116,000330: 22,2420           72405                           DMP      SL1                                   
018117,000331: 22,2421           00013                                    10D                                   
018118,000332: 22,2422           10001                           STORE    0,2                                   
018119,000333: 22,2423           77745                           DLOAD                                          
018120,000334: 22,2424           00005                                    4                                     
018121,000335: 22,2425           65205                           DMP      PDDL                                  
018122,000336: 22,2426           00001                                    0                                     #  (PD6 SIN(THETA)SIN(PHI))
018123,000337: 22,2427           00007                                    6                                     
018124,000338: 22,2430           41205                           DMP      DMP                                   
018125,000339: 22,2431           00011                                    8D                                    
018126,000340: 22,2432           00003                                    2                                     
018127,000341: 22,2433           44352                           SL1      BDSU                                  
018128,000342: 22,2434           00015                                    12D                                   
018129,000343: 22,2435           77752                           SL1                                            

Page 410

018131,000345: 22,2436           10003                           STORE    2,2                                   
018132,000346: 22,2437           77745                           DLOAD                                          
018133,000347: 22,2440           00003                                    2                                     
018134,000348: 22,2441           65205                           DMP      PDDL                                  #  (PD7 COS(PHI)SIN(THETA)) SCALED 4
018135,000349: 22,2442           00005                                    4                                     
018136,000350: 22,2443           00007                                    6                                     
018137,000351: 22,2444           41205                           DMP      DMP                                   
018138,000352: 22,2445           00011                                    8D                                    
018139,000353: 22,2446           00001                                    0                                     
018140,000354: 22,2447           77752                           SL1                                            
018141,000355: 22,2450           72415                           DAD      SL1                                   
018142,000356: 22,2451           00017                                    14D                                   
018143,000357: 22,2452           10005                           STORE    4,2                                   
018144,000358: 22,2453           77745                           DLOAD                                          
018145,000359: 22,2454           00011                                    8D                                    
018146,000360: 22,2455           10007                           STORE    6,2                                   
018147,000361: 22,2456           77745                           DLOAD                                          
018148,000362: 22,2457           00013                                    10D                                   
018149,000363: 22,2460           72405                           DMP      SL1                                   
018150,000364: 22,2461           00003                                    2                                     
018151,000365: 22,2462           10011                           STORE    8D,2                                  
018152,000366: 22,2463           77745                           DLOAD                                          
018153,000367: 22,2464           00013                                    10D                                   
018154,000368: 22,2465           57405                           DMP      DCOMP                                 
018155,000369: 22,2466           00001                                    0                                     
018156,000370: 22,2467           77752                           SL1                                            
018157,000371: 22,2470           10013                           STORE    10D,2                                 
018158,000372: 22,2471           77745                           DLOAD                                          
018159,000373: 22,2472           00005                                    4                                     
018160,000374: 22,2473           57405                           DMP      DCOMP                                 
018161,000375: 22,2474           00013                                    10D                                   
018162,000376: 22,2475           77752                           SL1                                            
018163,000377: 22,2476           10015                           STORE    12D,2                                 
018164,000378: 22,2477           77745                           DLOAD                                          
018165,000379: 22,2500           72405                           DMP      SL1                                   #  (PUSH UP 7)
018166,000380: 22,2501           00011                                    8D                                    
018167,000381: 22,2502           41325                           PDDL     DMP                                   #  (PD7 COS(PHI)SIN(THETA)SIN(PSI)) SCALE4
018168,000382: 22,2503           00007                                    6                                     
018169,000383: 22,2504           00001                                    0                                     
018170,000384: 22,2505           72415                           DAD      SL1                                   #  (PUSH UP 7)
018171,000385: 22,2506           77626                           STADR                                          #  C7=COS(PHI)SIN(THETA)SIN(PSI)
018172,000386: 22,2507           67760                           STORE    14D,2                                 
018173,000387: 22,2510           77745                           DLOAD                                          
018174,000388: 22,2511           72405                           DMP      SL1                                   #  (PUSH UP 6)
018175,000389: 22,2512           00011                                    8D                                    
018176,000390: 22,2513           41325                           PDDL     DMP                                   #  (PD6 SIN(THETA)SIN(PHI)SIN(PSI)) SCALE4
018177,000391: 22,2514           00007                                    6                                     
018178,000392: 22,2515           00003                                    2                                     
018179,000393: 22,2516           72425                           DSU      SL1                                   #  (PUSH UP 6)
018180,000394: 22,2517           77626                           STADR                                          

Page 411

018182,000396: 22,2520           67756                           STORE    16D,2                                 #  C8=-SIN(THETA)SIN(PHI)SIN(PSI)
018183,000397: 22,2521           77616                           RVQ                                            #     +COS(THETA)COS(PHI)
018184,000398: 22,2522                        ENDDCM             EQUALS                                         
018185,000399: 
018186,000400: 22,2000                                           SETLOC   KALCMON1                              
018187,000401: 22,2000                                           BANK                                           
018188,000402: 
018189,000403:                                                                                                  #  CALCULATION OF THE MATRIX DEL......
018190,000404: 
018191,000405:                                                                                                  #        *      *               --T           *
018192,000406:                                                                                                  #        DEL = (IDMATRIX)COS(A)+UU (1-COS(A))+UX SIN(A)          SCALED 1
018193,000407: 
018194,000408:                                                                                                  #              -
018195,000409:                                                                                                  #        WHERE U IS A UNIT VECTOR (DP SCALED 2) ALONG THE AXIS OF ROTATION.
018196,000410:                                                                                                  #        A IS THE ANGLE OF ROTATION (DP SCALED 2)
018197,000411:                                                                                                  #                                           -
018198,000412:                                                                                                  #        UPON ENTRY THE STARTING ADDRESS OF U IS COF, AND A IS IN MPAC
018199,000413: 
018200,000414: 22,2522                                           COUNT*   $$/KALC                               
018201,000415: 22,2522           41401        DELCOMP            SETPD    PUSH                                  #  MPAC CONTAINS THE ANGLE A
018202,000416: 22,2523           00001                                    0                                     
018203,000417: 22,2524           65356                           SIN      PDDL                                  #  PD0 = SIN(A)
018204,000418: 22,2525           41546                           COS      PUSH                                  #  PD2 = COS(A)
018205,000419: 22,2526           65302                           SR2      PDDL                                  #  PD2 = COS(A)                          $8
018206,000420: 22,2527           41021                           BDSU     BOVB                                  #  PD4 = 1-COS(A)                        $2
018207,000421: 22,2530           15334                                    DPHALF                                
018208,000422: 22,2531           45761                                    SIGNMPAC                              
018209,000423: 
018210,000424:                                                                                                  #  COMPUTE THE DIAGONAL COMPONENTS OF DEL
018211,000425: 
018212,000426: 22,2532           77725                           PDDL                                           
018213,000427: 22,2533           03343                                    COF                                   
018214,000428: 22,2534           41316                           DSQ      DMP                                   
018215,000429: 22,2535           00005                                    4                                     
018216,000430: 22,2536           52415                           DAD      SL3                                   
018217,000431: 22,2537           00003                                    2                                     
018218,000432: 22,2540           77604                           BOVB                                           
018219,000433: 22,2541           45761                                    SIGNMPAC                              
018220,000434: 22,2542           17426                           STODL    DEL                                   #  UX UX(U-COS(A)) +COS(A)               $1
018221,000435: 22,2543           03345                                    COF        +2                         
018222,000436: 22,2544           41316                           DSQ      DMP                                   
018223,000437: 22,2545           00005                                    4                                     
018224,000438: 22,2546           52415                           DAD      SL3                                   
018225,000439: 22,2547           00003                                    2                                     
018226,000440: 22,2550           77604                           BOVB                                           
018227,000441: 22,2551           45761                                    SIGNMPAC                              
018228,000442: 22,2552           17436                           STODL    DEL        +8D                        #  UY UY(1-COS(A)) +COS(A)               $1
018229,000443: 22,2553           03347                                    COF        +4                         
018230,000444: 22,2554           41316                           DSQ      DMP                                   

Page 412

018232,000446: 22,2555           00005                                    4                                     
018233,000447: 22,2556           52415                           DAD      SL3                                   
018234,000448: 22,2557           00003                                    2                                     
018235,000449: 22,2560           77604                           BOVB                                           
018236,000450: 22,2561           45761                                    SIGNMPAC                              
018237,000451: 22,2562           03446                           STORE    DEL        +16D                       #  UZ UZ(1-COS(A)) +COS(A)               $1
018238,000452: 
018239,000453:                                                                                                  #  COMPUTE THE OFF DIAGONAL TERMS OF DEL
018240,000454: 
018241,000455: 22,2563           41345                           DLOAD    DMP                                   
018242,000456: 22,2564           03343                                    COF                                   
018243,000457: 22,2565           03345                                    COF        +2                         
018244,000458: 22,2566           72405                           DMP      SL1                                   
018245,000459: 22,2567           00005                                    4                                     
018246,000460: 22,2570           41325                           PDDL     DMP                                   #  D6    UX UY (1-COS A)                 $ 4
018247,000461: 22,2571           03347                                    COF        +4                         
018248,000462: 22,2572           00001                                    0                                     
018249,000463: 22,2573           43206                           PUSH     DAD                                   #  D8    UZ SIN A                        $ 4
018250,000464: 22,2574           00007                                    6                                     
018251,000465: 22,2575           41112                           SL2      BOVB                                  
018252,000466: 22,2576           45761                                    SIGNMPAC                              
018253,000467: 22,2577           17434                           STODL    DEL        +6                         
018254,000468: 22,2600           62421                           BDSU     SL2                                   
018255,000469: 22,2601           77604                           BOVB                                           
018256,000470: 22,2602           45761                                    SIGNMPAC                              
018257,000471: 22,2603           17430                           STODL    DEL        +2                         
018258,000472: 22,2604           03343                                    COF                                   
018259,000473: 22,2605           41205                           DMP      DMP                                   
018260,000474: 22,2606           03347                                    COF        +4                         
018261,000475: 22,2607           00005                                    4                                     
018262,000476: 22,2610           65352                           SL1      PDDL                                  #  D6    UX UZ (1-COS A)                 $ 4
018263,000477: 22,2611           03345                                    COF        +2                         
018264,000478: 22,2612           41405                           DMP      PUSH                                  #  D8    UY SIN(A)
018265,000479: 22,2613           00001                                    0                                     
018266,000480: 22,2614           62415                           DAD      SL2                                   
018267,000481: 22,2615           00007                                    6                                     
018268,000482: 22,2616           77604                           BOVB                                           
018269,000483: 22,2617           45761                                    SIGNMPAC                              
018270,000484: 22,2620           17432                           STODL    DEL        +4                         #  UX UZ (1-COS(A))+UY SIN(A)
018271,000485: 22,2621           62421                           BDSU     SL2                                   
018272,000486: 22,2622           77604                           BOVB                                           
018273,000487: 22,2623           45761                                    SIGNMPAC                              
018274,000488: 22,2624           17442                           STODL    DEL        +12D                       #  UX UZ (U-COS(A))-UY SIN(A)
018275,000489: 22,2625           03345                                    COF        +2                         
018276,000490: 22,2626           41205                           DMP      DMP                                   
018277,000491: 22,2627           03347                                    COF        +4                         
018278,000492: 22,2630           00005                                    4                                     
018279,000493: 22,2631           65352                           SL1      PDDL                                  #  D6    UY UZ (1-COS(A))                $ 4
018280,000494: 22,2632           03343                                    COF                                   
018281,000495: 22,2633           41405                           DMP      PUSH                                  #  D8    UX SIN(A)

Page 413

018283,000497: 22,2634           00001                                    0                                     
018284,000498: 22,2635           62415                           DAD      SL2                                   
018285,000499: 22,2636           00007                                    6                                     
018286,000500: 22,2637           77604                           BOVB                                           
018287,000501: 22,2640           45761                                    SIGNMPAC                              
018288,000502: 22,2641           17444                           STODL    DEL        +14D                       #  UY UZ(1-COS(A)) +UX SIN(A)
018289,000503: 22,2642           62421                           BDSU     SL2                                   
018290,000504: 22,2643           77604                           BOVB                                           
018291,000505: 22,2644           45761                                    SIGNMPAC                              
018292,000506: 22,2645           03440                           STORE    DEL        +10D                       #  UY UZ(1-COS(A)) -UX SIN(A)
018293,000507: 22,2646           77616                           RVQ                                            
018294,000508: 
018295,000509:                                                                                                  #  DIRECTION COSINE MATRIX TO CDU ANGLE ROUTINE
018296,000510:                                                                                                  #  X1 CONTAINS THE COMPLEMENT OF THE STARTING ADDRESS FOR MATRIX (SCALED 2)
018297,000511:                                                                                                  #  LEAVES CDU ANGLES SCALED 2PI IN V(MPAC)
018298,000512:                                                                                                  #  COS(MGA) WILL BE LEFT IN S1 (SCALED 1)
018299,000513: 
018300,000514:                                                                                                  #  THE DIRECTION COSINE MATRIX RELATING S/C AXES TO STABLE MEMBER AXES CAN BE WRITTEN AS ***
018301,000515: 
018302,000516:                                                                                                  #        C =COS(THETA)COS(PSI)
018303,000517:                                                                                                  #         0
018304,000518:                                                                                                  #        C =-COS(THETA)SIN(PSI)COS(PHI)+SI (THETA)SIN(PHI)
018305,000519:                                                                                                  #         1
018306,000520:                                                                                                  #        C =COS(THETA)SIN(PSI)SIN(PHI) + S N(THETA)COS(PHI)
018307,000521:                                                                                                  #         2
018308,000522:                                                                                                  #        C =SIN(PSI)
018309,000523:                                                                                                  #         3
018310,000524:                                                                                                  #        C =COS(PSI)COS(PHI)
018311,000525:                                                                                                  #         4
018312,000526:                                                                                                  #        C =-COS(PSI)SIN(PHI)
018313,000527:                                                                                                  #         5
018314,000528:                                                                                                  #        C =-SIN(THETA)COS(PSI)
018315,000529:                                                                                                  #         6
018316,000530:                                                                                                  #        C =SIN(THETA)SIN(PSI)COS(PHI)+COS THETA)SIN(PHI)
018317,000531:                                                                                                  #         7
018318,000532:                                                                                                  #        C =-SIN(THETA)SIN(PSI)SIN(PHI)+CO (THETA)COS(PHI)
018319,000533:                                                                                                  #         8
018320,000534: 
018321,000535:                                                                                                  #        WHERE   PHI = OGA
018322,000536:                                                                                                  #                THETA = IGA
018323,000537:                                                                                                  #                PSI = MGA
018324,000538: 
018325,000539: 22,2647           67543        DCMTOCDU           DLOAD*   ARCSIN                                
018326,000540: 22,2650           00007                                    6,1                                   
018327,000541: 22,2651           71406                           PUSH     COS                                   #  PD +0         PSI
018328,000542: 22,2652           41152                           SL1      BOVB                                  
018329,000543: 22,2653           45761                                    SIGNMPAC                              
018330,000544: 22,2654           00051                           STORE    S1                                    
018331,000545: 22,2655           57543                           DLOAD*   DCOMP                                 

Page 414

018333,000547: 22,2656           00015                                    12D,1                                 
018334,000548: 22,2657           67471                           DDV      ARCSIN                                
018335,000549: 22,2660           00051                                    S1                                    
018336,000550: 22,2661           51123                           PDDL*    BPL                                   #  PD +2         THETA
018337,000551: 22,2662           00001                                    0,1                                   #  MUST CHECK THE SIGN OF COS(THETA)
018338,000552: 22,2663           44675                                    OKTHETA                               #  TO DETERMINE THE PROPER QUADRANT
018339,000553: 22,2664           57545                           DLOAD    DCOMP                                 
018340,000554: 22,2665           43244                           BPL      DAD                                   
018341,000555: 22,2666           44672                                    SUHALFA                               
018342,000556: 22,2667           15334                                    DPHALF                                
018343,000557: 22,2670           77650                           GOTO                                           
018344,000558: 22,2671           44674                                    CALCPHI                               
018345,000559: 22,2672           77625        SUHALFA            DSU                                            
018346,000560: 22,2673           15334                                    DPHALF                                
018347,000561: 22,2674           77606        CALCPHI            PUSH                                           
018348,000562: 22,2675           57543        OKTHETA            DLOAD*   DCOMP                                 
018349,000563: 22,2676           00013                                    10D,1                                 
018350,000564: 22,2677           67471                           DDV      ARCSIN                                
018351,000565: 22,2700           00051                                    S1                                    
018352,000566: 22,2701           51123                           PDDL*    BPL                                   #  PUSH DOWN PHI
018353,000567: 22,2702           00011                                    8D,1                                  
018354,000568: 22,2703           44715                                    OKPHI                                 
018355,000569: 22,2704           57545                           DLOAD    DCOMP                                 #  PUSH UP PHI
018356,000570: 22,2705           43244                           BPL      DAD                                   
018357,000571: 22,2706           44712                                    SUHALFAP                              
018358,000572: 22,2707           15334                                    DPHALF                                
018359,000573: 22,2710           77650                           GOTO                                           
018360,000574: 22,2711           44716                                    VECOFANG                              
018361,000575: 22,2712           52025        SUHALFAP           DSU      GOTO                                  
018362,000576: 22,2713           15334                                    DPHALF                                
018363,000577: 22,2714           44716                                    VECOFANG                              
018364,000578: 22,2715           77745        OKPHI              DLOAD                                          #  PUSH UP PHI
018365,000579: 22,2716           43466        VECOFANG           VDEF     RVQ                                   
018366,000580: 

Page 415

018368,000582:                                                                                                  #  ROUTINE FOR TERMINATING AUTOMATIC MANEUVERS
018369,000583: 
018370,000584: 22,2717           77776        NOGOM3             EXIT                                           
018371,000585: 22,2720           00004        NOGOM2             INHINT                                         #  THIS LOCATION ACCESSED BY A BZMF NOGO -2
018372,000586: 22,2721           04636                           TC       BANKCALL                              
018373,000587: 22,2722           40203                           CADR     ZEROEROR                              
018374,000588: 
018375,000589: 22,2723           00004        NOGO               INHINT                                         
018376,000590: 22,2724           04463                           TC       STOPRATE                              
018377,000591: 
018378,000592: 22,2725           34767                           CAF      R67BIT                                
018379,000593: 22,2726           70104                           MASK     FLAGWRD8                              
018380,000594: 22,2727           00006                           EXTEND                                         
018381,000595: 22,2730           12740                           BZF      NOTR67ND                              
018382,000596: 
018383,000597: 22,2731           35016                           CAF      1SEC                                  #  WAITLIST TASK IN 1 SECON:
018384,000598: 22,2732           05233                           TC       WAITLIST                              #  RETURN TO UPDTCALL
018385,000599: 22,2733  E6,1661                                  EBANK=   BCDU                                  
018386,000600: 22,2733           02320 74066                     2CADR    R67                                   
018387,000601: 
018388,000602: 22,2735           05402                           TC       PHASCHNG                              
018389,000603: 22,2736           00111                           OCT      00111                                 
018390,000604: 
018391,000605: 22,2737  01,2025               1P11SPT2           =        1.11SPOT                              
018392,000606: 22,2737           05205                           TC       ENDOFJOB                              
018393,000607: 
018394,000608: 22,2740           34767        NOTR67ND           CAF      TWO                                   #  RETURN VIA
018395,000609: 22,2741           05233                           TC       WAITLIST                              #  GOODEND
018396,000610: 22,2742  E6,1661                                  EBANK=   BCDU                                  
018397,000611: 22,2742           02311 20066                     2CADR    ENDMANU                               
018398,000612: 
018399,000613: 22,2744           15205                           TCF      ENDOFJOB                              

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