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.

013124,000002:                                                                                                  ## Copyright:   Public domain.
013125,000003:                                                                                                  ## Filename:    CSM_GEOMETRY.agc
013126,000004:                                                                                                  ## Purpose:     A section of Artemis revision 071.
013127,000005:                                                                                                  ##              It is part of the reconstructed source code for the first
013128,000006:                                                                                                  ##              release of the flight software for the Command Module's
013129,000007:                                                                                                  ##              (CM) Apollo Guidance Computer (AGC) for Apollo 15 through
013130,000008:                                                                                                  ##              17. The code has been recreated from a copy of Artemis 072.
013131,000009:                                                                                                  ##              It has been adapted such that the resulting bugger words
013132,000010:                                                                                                  ##              exactly match those specified for Artemis 071 in NASA
013133,000011:                                                                                                  ##              drawing 2021154-, which gives relatively high confidence
013134,000012:                                                                                                  ##              that the reconstruction is correct.
013135,000013:                                                                                                  ## Reference:   297
013136,000014:                                                                                                  ## Assembler:   yaYUL
013137,000015:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
013138,000016:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
013139,000017:                                                                                                  ## Mod history: 2019-08-14 MAS  Created from Artemis 072.
013140,000018: 

Page 297

013142,000020: 
013143,000021: 23,2000                                           SETLOC   COMGEOM1                              
013144,000022: 23,2000                                           BANK                                           
013145,000023: 
013146,000024:                                                                                                  #  THIS ROUTINE TAKES THE SHAFT AND TRUNNION ANGLES AS READ BY THE CM OPTICAL SYSTEM AND CONVERTS THEM INTO A UNIT
013147,000025:                                                                                                  #  VECTOR REFERENCED TO THE NAVIGATION BASE COORDINATE SYSTEM AND COINCIDENT WITH THE SEXTANT LINE OF SIGHT.
013148,000026: 
013149,000027:                                                                                                  #  THE INPUTS ARE  1) THE SEXTANT SHAFT AND TRUNNION ANGLES ARE STORED SP IN LOCATIONS 3 AND 5 RESPECTIVELY OF THE
013150,000028:                                                                                                  #  MARK VAC AREA.  2) THE COMPLEMENT OF THE BASE ADDRESS OF THE MARK VAC AREA IS STORED SP AT LOCATION X1 OF YOUR
013151,000029:                                                                                                  #  JOB VAC AREA.
013152,000030: 
013153,000031:                                                                                                  #  THE OUTPUT IS A HALF-UNIT VECTOR IN NAVIGATION BASE COORDINATES AND STORED AT LOCATION 32D OF THE VAC AREA. THE
013154,000032:                                                                                                  #  OUTPUT IS ALSO AVAILABLE AT MPAC.
013155,000033: 
013156,000034: 23,2000                                           COUNT*   $$/GEOM                               
013157,000035: 23,2000           47133        SXTNB              SLOAD*   RTB                                   #  PUSHDOWN 00,02,04,(17D-19D),32D-36D
013158,000036: 23,2001           00006                                    5,1                                   #  TRUNNION = TA
013159,000037: 23,2002           51754                                    CDULOGIC                              
013160,000038: 23,2003           41434                           RTB      PUSH                                  
013161,000039: 23,2004           46027                                    SXTLOGIC                              
013162,000040: 23,2005           72556                           SIN      SL1                                   
013163,000041: 23,2006           66606                           PUSH     SLOAD*                                #  PD2 = SIN(TA)
013164,000042: 23,2007           00004                                    3,1                                   #  SHAFT = SA
013165,000043: 23,2010           41434                           RTB      PUSH                                  #  PD4 = SA
013166,000044: 23,2011           51754                                    CDULOGIC                              
013167,000045: 
013168,000046: 23,2012           41346                           COS      DMP                                   
013169,000047: 23,2013           00003                                    2                                     
013170,000048: 23,2014           14041                           STODL    STARM                                 #  COS(SA)SIN(TA)
013171,000049: 
013172,000050: 23,2015           41356                           SIN      DMP                                   
013173,000051: 23,2016           77626                           STADR                                          
013174,000052: 23,2017           63734                           STODL    STARM      +2                         #  SIN(SA)SIN(TA)
013175,000053: 
013176,000054: 23,2020           77746                           COS                                            
013177,000055: 23,2021           24045                           STOVL    STARM      +4                         
013178,000056: 23,2022           00041                                    STARM                                 #  STARM = 32D
013179,000057: 23,2023           76521                           MXV      VSL1                                  
013180,000058: 23,2024           06300                                    NB1NB2                                
013181,000059: 23,2025           00041                           STORE    32D                                   
013182,000060: 23,2026           77616                           RVQ                                            
013183,000061: 
013184,000062: 23,2027           32321        SXTLOGIC           CAF      10DEGS-                               #  CORRECT FOR 19.775 DEGREE OFFSET
013185,000063: 23,2030           26154                           ADS      MPAC                                  
013186,000064: 23,2031           34754                           CAF      QUARTER                               
013187,000065: 23,2032           07256                           TC       SHORTMP                               
013188,000066: 23,2033           06030                           TC       DANZIG                                
013189,000067: 

Page 298

013191,000069: 
013192,000070:                                                                                                  #  CALCSXA COMPUTES THE SEXTANT SHAFT AND TRUNNION ANGLES REQUIRED TO POSITION THE OPTICS SUCH THAT A STAR LINE-
013193,000071:                                                                                                  #  OF-SIGHT LIES ALONG THE STAR VECTOR. THE ROUTINE TAKES THE GIVEN STAR VECTOR AND EXPRESSES IT AS A VECTOR REF-
013194,000072:                                                                                                  #  ERENCED TO THE OPTICS COORDINATE SYSTEM. IN ADDITION IT SETS UP THREE UNIT VECTORS DEFINING THE X, Y, AND Z AXES
013195,000073:                                                                                                  #  REFERENCED TO THE OPTICS COORDINATE SYSTEM.
013196,000074: 
013197,000075:                                                                                                  #  THE INPUTS ARE  1) THE STAR VECTOR REFERRED TO PRESENT STABLE MEMBER COORDINATES STORED AT STAR.  2) SAME ANGLE
013198,000076:                                                                                                  #  INPUT AS *SMNB*, I.E. SINES AND COSINES OF THE CDU ANGLES, IN THE ORDER Y Z X, AT SINCDU AND COSCDU.  A CALL
013199,000077:                                                                                                  #  TO CDUTRIG WILL PROVIDE THIS INPUT.
013200,000078: 
013201,000079:                                                                                                  #  THE OUTPUTS ARE THE SEXTANT SHAFT AND TRUNNION ANGLES STORED DP AT SAC AND PAC RESPECTIVELY.  (LOW ORDER PART
013202,000080:                                                                                                  #  EQUAL TO ZERO).
013203,000081: 
013204,000082: 23,2034           77220        CALCSXA            ITA      VLOAD                                 #  PUSHDOWN 00-26D,28D,30D,32D-36D
013205,000083: 23,2035           00034                                    28D                                   
013206,000084: 23,2036           02766                                    STAR                                  
013207,000085: 23,2037           77624                           CALL                                           
013208,000086: 23,2040           47633                                    *SMNB*                                
013209,000087: 23,2041           76521                           MXV      VSL1                                  
013210,000088: 23,2042           06256                                    NB2NB1                                
013211,000089: 23,2043           26766                           STOVL    STAR                                  
013212,000090: 23,2044           15334                                    HIUNITX                               
013213,000091: 23,2045           26555                           STOVL    XNB1                                  
013214,000092: 23,2046           15332                                    HIUNITY                               
013215,000093: 23,2047           26563                           STOVL    YNB1                                  
013216,000094: 23,2050           15330                                    HIUNITZ                               
013217,000095: 23,2051           36571                           STCALL   ZNB1                                  
013218,000096: 23,2052           46076                                    SXTANG1                               
013219,000097: 

Page 299

013221,000099: 
013222,000100:                                                                                                  #  SXTANG COMPUTES THE SEXTANT SHAFT AND TRUNNION ANGLES REQUIRED TO POSITION THE OPTICS SUCH THAT A STAR LINE-OF-
013223,000101:                                                                                                  #  SIGHT LIES ALONG THE STAR VECTOR.
013224,000102: 
013225,000103:                                                                                                  #  THE INPUTS ARE  1) THE STAR VECTOR REFERRED TO ANY COORDINATE SYSTEM STORED AT STAR.  2) THE NAVIGATION BASE
013226,000104:                                                                                                  #  COORDINATES REFERRED TO THE SAME COORDINATE SYSTEM. THESE THREE HALF-UNIT VECTORS ARE STORED AT XNB, YNB, AND
013227,000105:                                                                                                  #  ZNB.
013228,000106: 
013229,000107:                                                                                                  #  THE OUTPUTS ARE THE SEXTANT SHAFT AND TRUNNION ANGLES STORED DP AT SAC AND PAC RESPECTIVELY.  (LOW ORDER PART
013230,000108:                                                                                                  #  EQUAL TO ZERO).
013231,000109: 
013232,000110: 23,2053           47020        SXTANG             ITA      RTB                                   #  PUSHDOWN 16D,18D,22D-26D,28D
013233,000111: 23,2054           00034                                    28D                                   
013234,000112: 23,2055           45731                                    TRANSP1                               #  EREF WRT NB2
013235,000113: 23,2056           64375                           VLOAD    MXV                                   
013236,000114: 23,2057           02714                                    XNB                                   
013237,000115: 23,2060           06256                                    NB2NB1                                
013238,000116: 23,2061           77772                           VSL1                                           
013239,000117: 23,2062           26555                           STOVL    XNB1                                  
013240,000118: 23,2063           02722                                    YNB                                   
013241,000119: 23,2064           76521                           MXV      VSL1                                  
013242,000120: 23,2065           06256                                    NB2NB1                                
013243,000121: 23,2066           26563                           STOVL    YNB1                                  
013244,000122: 23,2067           02730                                    ZNB                                   
013245,000123: 23,2070           76521                           MXV      VSL1                                  
013246,000124: 23,2071           06256                                    NB2NB1                                
013247,000125: 23,2072           02571                           STORE    ZNB1                                  
013248,000126: 
013249,000127: 23,2073           47034                           RTB      RTB                                   
013250,000128: 23,2074           45731                                    TRANSP1                               
013251,000129: 23,2075           45745                                    TRANSP2                               
013252,000130: 
013253,000131: 23,2076           47375        SXTANG1            VLOAD    VXV                                   
013254,000132: 23,2077           02571                                    ZNB1                                  
013255,000133: 23,2100           02766                                    STAR                                  
013256,000134: 23,2101           77600                           BOV                                            
013257,000135: 23,2102           46103                                    +1                                    
013258,000136: 23,2103           40056                           UNIT     BOV                                   
013259,000137: 23,2104           46145                                    ZNB=S1                                
013260,000138: 23,2105           00027                           STORE    PDA                                   #  PDA = UNIT(ZNB X S)
013261,000139: 
013262,000140: 23,2106           57441                           DOT      DCOMP                                 
013263,000141: 23,2107           02555                                    XNB1                                  
013264,000142: 23,2110           24023                           STOVL    SINTH                                 #  SIN(SA) = PDA . -XNB
013265,000143: 23,2111           00027                                    PDA                                   
013266,000144: 
013267,000145: 23,2112           77641                           DOT                                            
013268,000146: 23,2113           02563                                    YNB1                                  
013269,000147: 23,2114           34021                           STCALL   COSTH                                 #  COS(SA) = PDA . YNB
013270,000148: 23,2115           47311                                    ARCTRIG                               

Page 300

013272,000150: 23,2116           77634                           RTB                                            
013273,000151: 23,2117           45640                                    1STO2S                                
013274,000152: 23,2120           26774                           STOVL    SAC                                   
013275,000153: 23,2121           02766                                    STAR                                  
013276,000154: 23,2122           77600                           BOV                                            
013277,000155: 23,2123           46124                                    +1                                    
013278,000156: 23,2124           72441                           DOT      SL1                                   
013279,000157: 23,2125           02571                                    ZNB1                                  
013280,000158: 23,2126           77726                           ACOS                                           
013281,000159: 23,2127           62440                           BMN      SL2                                   
013282,000160: 23,2130           46142                                    SXTALARM                              #  TRUNNION ANGLE NEGATIVE
013283,000161: 23,2131           45200                           BOV      DSU                                   
013284,000162: 23,2132           46142                                    SXTALARM                              #  TRUNNION ANGLE GREATER THAN 90 DEGREES
013285,000163: 23,2133           06327                                    20DEG-                                
013286,000164: 23,2134           77634                           RTB                                            
013287,000165: 23,2135           45640                                    1STO2S                                
013288,000166: 23,2136           02776                           STORE    PAC                                   #  FOR FLIGHT USE, CULTFLAG IS ON IF
013289,000167: 23,2137           77614                           CLRGO                                          #  TRUNION IS GREATER THAN 90 DEG
013290,000168: 23,2140           01630                                    CULTFLAG                              
013291,000169: 23,2141           00034                                    28D                                   
013292,000170: 23,2142           77614        SXTALARM           SETGO                                          #  ALARM HAS BEEN REMOVED FROM THIS
013293,000171: 23,2143           01430                                    CULTFLAG                              
013294,000172: 23,2144           00034                                    28D                                   #  SUBROUTINE, ALARM WILL BE SET BY MPI
013295,000173: 23,2145           77745        ZNB=S1             DLOAD                                          
013296,000174: 23,2146           06323                                    270DEG                                
013297,000175: 23,2147           16774                           STODL    SAC                                   
013298,000176: 23,2150           06325                                    20DEGS-                               
013299,000177: 23,2151           02776                           STORE    PAC                                   
013300,000178: 23,2152           77614                           CLRGO                                          
013301,000179: 23,2153           01630                                    CULTFLAG                              
013302,000180: 23,2154           00034                                    28D                                   
013303,000181: 

Page 301

013305,000183: 
013306,000184:                                                                                                  #  THESE TWO ROUTINES COMPUTE THE ACTUAL STATE VECTOR FOR LM, CSM BY ADDING
013307,000185:                                                                                                  #  THE CONIC R,V AND THE DEVIATIONS R,V.  THE STATE VECTORS ARE CONVERTED TO
013308,000186:                                                                                                  #  METERS B-29 AND METERS/CSEC B-7 AND STORED APPROPRIATELY IN RN,VN OR
013309,000187:                                                                                                  #  R-OTHER , V-OTHER FOR DOWNLINK. THE ROUTINES NAMES ARE SWITCHED IN THE
013310,000188:                                                                                                  #  OTHER VEHICLES COMPUTER.
013311,000189: 
013312,000190:                                                                                                  #  INPUT
013313,000191:                                                                                                  #        STATE VECTOR IN TEMPORARY STORAGE AREA
013314,000192:                                                                                                  #        IF STATE VECTOR IS SCALED POS B27 AND VEL B5
013315,000193:                                                                                                  #                SET X2 TO +2
013316,000194:                                                                                                  #        IF STATE VECTOR IS SCALED POS B29 AND VEL B7
013317,000195:                                                                                                  #                SET X2 TO 0
013318,000196: 
013319,000197:                                                                                                  #  OUTPUT
013320,000198:                                                                                                  #        R(T) IN RN, V(T) IN VN, T IN PIPTIME
013321,000199:                                                                                                  #  OR
013322,000200:                                                                                                  #        R(T) IN R-OTHER, V(T) IN V-OTHER        (T IS DEFINED BY T-OTHER)
013323,000201: 
013324,000202: 10,2000                                           SETLOC   COMGEOM2                              
013325,000203: 10,2000                                           BANK                                           
013326,000204: 10,2240                                           COUNT*   $$/GEOM                               
013327,000205: 10,2240           43414        SVDWN1             BOF      RVQ                                   #  SW=1=AVETOMID DOING W-MATRIX INTEG
013328,000206: 10,2241           04756                                    AVEMIDSW                              
013329,000207: 10,2242           20243                                    +1                                    
013330,000208: 10,2243           53775                           VLOAD    VSL*                                  
013331,000209: 10,2244           01521                                    TDELTAV                               
013332,000210: 10,2245           57605                                    0          -7,2                       
013333,000211: 10,2246           53655                           VAD      VSL*                                  
013334,000212: 10,2247           01535                                    RCV                                   
013335,000213: 10,2250           57576                                    0,2                                   
013336,000214: 10,2251           25030                           STOVL    RN                                    
013337,000215: 10,2252           01527                                    TNUV                                  
013338,000216: 10,2253           53257                           VSL*     VAD                                   
013339,000217: 10,2254           57602                                    0          -4,2                       
013340,000218: 10,2255           01543                                    VCV                                   
013341,000219: 10,2256           77657                           VSL*                                           
013342,000220: 10,2257           57576                                    0,2                                   
013343,000221: 10,2260           15036                           STODL    VN                                    
013344,000222: 10,2261           01517                                    TET                                   
013345,000223: 10,2262           01044                           STORE    PIPTIME                               
013346,000224: 10,2263           77616                           RVQ                                            
013347,000225: 
013348,000226: 10,2264           53775        SVDWN2             VLOAD    VSL*                                  
013349,000227: 10,2265           01521                                    TDELTAV                               
013350,000228: 10,2266           57605                                    0          -7,2                       
013351,000229: 10,2267           53655                           VAD      VSL*                                  
013352,000230: 10,2270           01535                                    RCV                                   
013353,000231: 10,2271           57576                                    0,2                                   

Page 302

013355,000233: 10,2272           25720                           STOVL    R-OTHER                               
013356,000234: 10,2273           01527                                    TNUV                                  
013357,000235: 10,2274           53257                           VSL*     VAD                                   
013358,000236: 10,2275           57602                                    0          -4,2                       
013359,000237: 10,2276           01543                                    VCV                                   
013360,000238: 10,2277           77657                           VSL*                                           
013361,000239: 10,2300           57576                                    0,2                                   
013362,000240: 10,2301           01726                           STORE    V-OTHER                               
013363,000241: 10,2302           77616                           RVQ                                            
013364,000242: 

Page 303

013366,000244: 
013367,000245:                                                                                                  #  SUBROUTINE TO COMPUTE THE NATURAL LOG OF C(MPAC, MPAC +1).
013368,000246: 
013369,000247:                                                                                                  #        ENTRY:  CALL
013370,000248:                                                                                                  #                        LOG
013371,000249: 
013372,000250:                                                                                                  #  SUBROUTINE RETURNS WITH -LOG IN DP MPAC.
013373,000251: 
013374,000252:                                                                                                  #  EBANK IS ARBITRARY..
013375,000253: 
013376,000254: 23,2000                                           SETLOC   POWFLIT2                              
013377,000255: 23,2000                                           BANK                                           
013378,000256: 23,2155                                           COUNT*   $$/GEOM                               
013379,000257: 23,2155           44301        LOG                NORM     BDSU                                  #  GENERATES LOG BY SHIFTING ARG
013380,000258: 23,2156           00160                                    MPAC       +3                         #  UNTIL IT LIES BETWEEN .5 AND 1.
013381,000259: 23,2157           15344                                    NEARLY1                               #  THE LOG OF THIS PART IS FOUND AND THE
013382,000260: 23,2160           77776                           EXIT                                           #  LOG OF THE SHIFTED PART IS COMPUTED
013383,000261: 
013384,000262: 23,2161           07171                           TC       POLY                                  #  AND ADDED IN. SHIFT COUNT STORED
013385,000263: 
013386,000264: 23,2162           00002                           DEC      2          B-14                       #  (N-1, SUPPLIED BY SMERZH)
013387,000265: 23,2163           00000 00000                     2DEC     0          B-28                       #  IN MPAC +3.
013388,000266: 23,2165           01001 14636                     2DEC     .031335467                            
013389,000267: 23,2167           00325 07310                     2DEC     .0130145859                            
013390,000268: 23,2171           00541 16735                     2DEC     .0215738898                            
013391,000269: 
013392,000270: 23,2173           34772                           CAF      ZERO                                  
013393,000271: 23,2174           54156                           TS       MPAC       +2                         
013394,000272: 23,2175           00006                           EXTEND                                         
013395,000273: 23,2176           32212                           DCA      CLOG2/32                              
013396,000274: 23,2177           52155                           DXCH     MPAC                                  
013397,000275: 23,2200           52160                           DXCH     MPAC       +3                         
013398,000276: 23,2201           40000                           COM                                            #  LOAD POSITIVE SHIFT COUNT IN A.
013399,000277: 23,2202           07256                           TC       SHORTMP                               #  MULTIPLY BY SHIFT COUNT.
013400,000278: 
013401,000279: 23,2203           52156                           DXCH     MPAC       +1                         
013402,000280: 23,2204           52155                           DXCH     MPAC                                  
013403,000281: 23,2205           52160                           DXCH     MPAC       +3                         
013404,000282: 23,2206           20155                           DAS      MPAC                                  
013405,000283: 23,2207           06006                           TC       INTPRET                               #  RESULT IN MPAC, MPAC +1
013406,000284: 
013407,000285: 23,2210           77616                           RVQ                                            
013408,000286: 
013409,000287: 23,2211  26,3343               NEARLY1            =        NEARONE                               
013410,000288: 23,2211           00542 34414  CLOG2/32           2DEC     .0216608494                            
013411,000289: 

Page 304

013413,000291: 
013414,000292:                                                                                                  #  SUBROUTINE NAME:  EARTH ROTATOR       (EARROT1 OR EARROT2)            DATE:  15 FEB 67
013415,000293:                                                                                                  #  MOD NO:  N +1                                                         LOG SECTION:  POWERED FLIGHT SUBROS
013416,000294:                                                                                                  #  MOD BY:  ENTRY GROUP (BAIRNSFATHER)
013417,000295: 
013418,000296:                                                                                                  #  FUNCTIONAL DESCRIPTION:  THIS ROUTINE PROJECTS THE INITIAL EARTH TARGET VECTOR   RTINIT   AHEAD THROUGH
013419,000297:                                                                                                  #        THE ESTIMATED TIME OF FLIGHT. INITIAL CALL RESOLVES THE INITIAL TARGET VECTOR   RTINIT   INTO EASTERLY
013420,000298:                                                                                                  #        AND NORMAL COMPONENTS   RTEAST   AND   RTNORM   . INITIAL AND SUBSEQUENT CALLS ROTATE THIS VECTOR
013421,000299:                                                                                                  #        ABOUT THE (FULL) UNIT POLAR AXIS   UNITW   THROUGH THE ANGLE   WIE DTEAROT   TO OBTAIN THE ROTATED
013422,000300:                                                                                                  #        TARGET VECTOR   RT   . ALL VECTORS EXCEPT   UNITW   ARE HALF UNIT.
013423,000301:                                                                                                  #        THE EQUATIONS ARE
013424,000302:                                                                                                  #                -    -        -                      -
013425,000303:                                                                                                  #                RT = RTINIT + RTNORM (COS(WT) - 1) + RTEAST SIN(WT)
013426,000304: 
013427,000305:                                                                                                  #        WHERE   WT = WIE DTEAROT
013428,000306: 
013429,000307:                                                                                                  #                RTINIT = INITIAL TARGET VECTOR
013430,000308:                                                                                                  #                -        -       -
013431,000309:                                                                                                  #                RTEAST = UNITW * RTINIT
013432,000310:                                                                                                  #                -        -        -
013433,000311:                                                                                                  #                RTNORM = RTEAST * UNITW
013434,000312: 
013435,000313:                                                                                                  #        FOR CONTINUOUS UPDATING, ONLY ONE ENTRY TO EARROT1 IS REQUIRED, WITH SUBSEQUENT ENTRIES AT EARROT2.
013436,000314: 
013437,000315:                                                                                                  #  CALLING SEQUENCE:     FIRST CALL                      SUBSEQUENT CALL
013438,000316:                                                                                                  #                        STCALL  DTEAROT                 STCALL  DTEAROT
013439,000317:                                                                                                  #                                EARROT1                         EARROT2
013440,000318:                                                                                                  #                        C(MPAC) UNSPECIFIED             C(MPAC) = DTEAROT
013441,000319:                                                                                                  #        PUSHLOC = PDL+0, ARBITRARY.  6 LOCATIONS USED.
013442,000320: 
013443,000321:                                                                                                  #  SUBROUTINES USED:  NONE
013444,000322: 
013445,000323:                                                                                                  #  NORMAL EXIT MODES:  RVQ
013446,000324: 
013447,000325:                                                                                                  #  ALARMS:  NONE
013448,000326: 
013449,000327:                                                                                                  #  OUTPUT:       RTEAST  (-1)            .5 UNIT VECTOR EAST, COMPNT OF RTINIT   LEFT BY FIRST CALL
013450,000328:                                                                                                  #                RTNORM  (-1)            .5 UNIT VECTOR NORML, COMPNT OF RTINIT  LEFT BY FIRST CALL
013451,000329:                                                                                                  #                RT      (-1)            .5 UNIT TARGET VECTOR, ROTATED          LEFT BY ALL CALLS
013452,000330:                                                                                                  #                DTEAROT (-28) CS        MAY BE CHANGED BY EARROT2, IF OVER 1 DAY
013453,000331: 
013454,000332:                                                                                                  #  ERASABLE INITIALIZATION REQUIRED:
013455,000333:                                                                                                  #                UNITW   (0)             UNIT POLAR VECTOR                       PAD LOADED
013456,000334:                                                                                                  #                RTINIT  (-1)            .5 UNIT INITIAL TARGET VECTOR           LEFT BY ENTRY
013457,000335:                                                                                                  #                DTEAROT (-28) CS        TIME OF FLIGHT                          LEFT BY CALLER
013458,000336: 
013459,000337:                                                                                                  #  DEBRIS:  QPRET, PDL+0 ... PDL+5
013460,000338: 

Page 305

013462,000340: 23,2213  E7,1451                                  EBANK=   RTINIT                                
013463,000341: 
013464,000342: 23,2213           47375        EARROT1            VLOAD    VXV                                   
013465,000343: 23,2214           01712                                    UNITW                                 #  FULL UNIT VECTOR
013466,000344: 23,2215           03452                                    RTINIT                                #  .5 UNIT
013467,000345: 23,2216           03460                           STORE    RTEAST                                #  .5 UNIT
013468,000346: 
013469,000347: 23,2217           77635                           VXV                                            
013470,000348: 23,2220           01712                                    UNITW                                 #  FULL UNIT
013471,000349: 23,2221           17466                           STODL    RTNORM                                #  .5 UNIT
013472,000350: 23,2222           03606                                    DTEAROT                               #  (-28) CS
013473,000351: 
013474,000352: 23,2223           56204        EARROT2            BOVB     DDV                                   
013475,000353: 23,2224           57544                                    TCDANZIG                              #  RESET OVFIND, IF ON
013476,000354: 23,2225           06254                                    1/WIE                                 
013477,000355: 23,2226           41400                           BOV      PUSH                                  
013478,000356: 23,2227           46243                                    OVERADAY                              
013479,000357: 23,2230           45346                           COS      DSU                                   
013480,000358: 23,2231           15334                                    HIDPHALF                              
013481,000359: 23,2232           65361                           VXSC     PDDL                                  #  XCH W PUSH LIST
013482,000360: 23,2233           03466                                    RTNORM                                #  .5 UNIT
013483,000361: 23,2234           74356                           SIN      VXSC                                  
013484,000362: 23,2235           03460                                    RTEAST                                #  .5 UNIT
013485,000363: 23,2236           76455                           VAD      VSL1                                  
013486,000364: 23,2237           53455                           VAD      UNIT                                  #  INSURE THAT RT IS 'UNIT'.
013487,000365: 23,2240           03452                                    RTINIT                                #  .5 UNIT
013488,000366: 23,2241           03474                           STORE    RT                                    #  .5 UNIT TARGET VECTOR
013489,000367: 
013490,000368: 23,2242           77616                           RVQ                                            
013491,000369: 
013492,000370: 23,2243           75345        OVERADAY           DLOAD    SIGN                                  
013493,000371: 23,2244           06254                                    1/WIE                                 
013494,000372: 23,2245           03606                                    DTEAROT                               
013495,000373: 23,2246           77621                           BDSU                                           
013496,000374: 23,2247           03606                                    DTEAROT                               
013497,000375: 23,2250           03606                           STORE    DTEAROT                               
013498,000376: 
013499,000377: 23,2251           77650                           GOTO                                           
013500,000378: 23,2252           46223                                    EARROT2                               
013501,000379: 
013502,000380:                                                                                                  # WIE            2DEC    .1901487997
013503,000381: 23,2253           01015 34732  1/WIE              2DEC     8616410    B-28                       
013504,000382: 
013505,000383: 23,2255           15373 11346  NB2NB1             2DEC     +.8431756920 B-1                        
013506,000384: 23,2257           00000 00000                     2DEC     0          B-28                       
013507,000385: 23,2261           67313 65307                     2DEC     -.5376381241 B-1                        
013508,000386: 

Page 306

013510,000388: 
013511,000389: 23,2263           00000 00000  ZERINFLT           2DEC     0          B-28                       
013512,000390: 
013513,000391: 23,2265           20000 00000  HALFNFLT           2DEC     .5                                    
013514,000392: 23,2267           00000 00000                     2DEC     0          B-28                       
013515,000393: 23,2271           10464 12470                     2DEC     +.5376381241 B-1                        
013516,000394: 23,2273           00000 00000                     2DEC     0          B-28                       
013517,000395: 23,2275           15373 11346                     2DEC     +.8431756920 B-1                        
013518,000396: 
013519,000397: 23,2277           15373 11346  NB1NB2             2DEC     +.8431756920 B-1                        
013520,000398: 23,2301           00000 00000                     2DEC     0          B-28                       
013521,000399: 23,2303           10464 12470                     2DEC     +.5376381241 B-1                        
013522,000400: 23,2305           00000 00000                     2DEC     0          B-28                       
013523,000401: 23,2307           20000 00000                     2DEC     .5                                    
013524,000402: 23,2311           00000 00000                     2DEC     0          B-28                       
013525,000403: 23,2313           67313 65307                     2DEC     -.5376381241 B-1                        
013526,000404: 23,2315           00000 00000                     2DEC     0          B-28                       
013527,000405: 23,2317           15373 11346                     2DEC     +.8431756920 B-1                        
013528,000406: 

Page 307

013530,000408: 
013531,000409: 23,2321           07020        10DEGS-            DEC      3600       B-14                       
013532,000410: 
013533,000411: 23,2322           60000        270DEG             OCT      60000                                 #  SHAFT   270 DEGREES   2S COMP.
013534,000412: 23,2323           00000                           OCT      00000                                 
013535,000413: 
013536,000414: 23,2324           61740        20DEGS-            DEC      -07199     B-14                       
013537,000415: 23,2325           77777                           DEC      -00000     B-14                       
013538,000416: 
013539,000417: 23,2326           07020        20DEG-             DEC      03600      B-14                       
013540,000418: 23,2327           00000                           DEC      00000      B-14                       

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