Source Code

These source-code files were from the printout at the MIT Museum, with many thanks to Deborah Douglas, the Museum's Curator of Science and Technology, for releasing it to us. The printout was digitally photographed by Paul Fjeld. A team of volunteers transcribed the source code manually from these images or, where appropriate, modified already-transcribed but similar source Colossus 249 (Apollo 9) source code to agree with the images from the printout. Note that the page images presented online are of reduced quality, and that higher-quality images are available. Report any conversion errors or legibility problems in page images to info@sandroid.org. Notations on the program listing read, in part:

	GAP:  ASSEMBLE REVISION 055 OF AGC PROGRAM COMANCHE BY NASA 2021113-051
	10:28 APR.  1,1969
Note that the date is the date of the printout, not the date of the program revision.

024306,000002:                                                                                                  ## Copyright:   Public domain.
024307,000003:                                                                                                  ## Filename:    TPI_SEARCH.agc
024308,000004:                                                                                                  ## Purpose:     Part of the source code for Colossus 2A, AKA Comanche 055.
024309,000005:                                                                                                  ##              It is part of the source code for the Command Module's (CM)
024310,000006:                                                                                                  ##              Apollo Guidance Computer (AGC), for Apollo 11.
024311,000007:                                                                                                  ## Assembler:   yaYUL
024312,000008:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
024313,000009:                                                                                                  ## Website:     www.ibiblio.org/apollo.
024314,000010:                                                                                                  ## Pages:       551-561
024315,000011:                                                                                                  ## Mod history: 2009-05-15 RSB  Adapted from the Colossus249/ file of the
024316,000012:                                                                                                  ##                              same name, using Comanche055 page images.
024317,000013:                                                                                                  ##              2009-05-20 RSB  Corrections:  On p. 551, "SETLOC P17S" -> P17S1.
024318,000014:                                                                                                  ##              2016-12-10 RSB  All of the GOTOPOOH's should have been
024319,000015:                                                                                                  ##                              GOTOPOOH, and I've changed them back.
024320,000016:                                                                                                  ##              2016-12-10 RSB  Proofed comments with octopus/ProoferComments
024321,000017:                                                                                                  ##                              and fixed the errors found.
024322,000018:                                                                                                  ##              2017-01-20 RSB  Fixed comment-text errors noted while diff'ing
024323,000019:                                                                                                  ##                              vs Colossus 249.
024324,000020:                                                                                                  ##
024325,000021:                                                                                                  ## This source code has been transcribed or otherwise adapted from digitized
024326,000022:                                                                                                  ## images of a hardcopy from the MIT Museum.  The digitization was performed
024327,000023:                                                                                                  ## by Paul Fjeld, and arranged for by Deborah Douglas of the Museum.  Many
024328,000024:                                                                                                  ## thanks to both.  The images (with suitable reduction in storage size and
024329,000025:                                                                                                  ## consequent reduction in image quality as well) are available online at
024330,000026:                                                                                                  ## www.ibiblio.org/apollo.  If for some reason you find that the images are
024331,000027:                                                                                                  ## illegible, contact me at info@sandroid.org about getting access to the 
024332,000028:                                                                                                  ## (much) higher-quality images which Paul actually created.
024333,000029:                                                                                                  ##
024334,000030:                                                                                                  ## Notations on the hardcopy document read, in part:
024335,000031:                                                                                                  ##
024336,000032:                                                                                                  ##      Assemble revision 055 of AGC program Comanche by NASA
024337,000033:                                                                                                  ##      2021113-051.  10:28 APR. 1, 1969  
024338,000034:                                                                                                  ##
024339,000035:                                                                                                  ##      This AGC program shall also be referred to as
024340,000036:                                                                                                  ##                      Colossus 2A
024341,000037: 

Page 551

024343,000039:                                                                                                  #  PROGRAM DESCRIPTION S17.1 AND S17.2
024344,000040: 
024345,000041:                                                                                                  #  FUNCTIONAL DESCRIPTION
024346,000042: 
024347,000043:                                                                                                  #  THE TPI SEARCH ROUTINE DETERMINES THE MINIMUM TOTAL VELOCITY TRANSFER TRAJECTORY FROM A GIVEN TPI
024348,000044:                                                                                                  #  MANEUVER TIME WITHIN THE CONSTRAINT OF A SAFE PERICENTER.  THIS VELOCITY IS THE SUM OF THE IMPULSIVE VELOCITIES
024349,000045:                                                                                                  #  FOR THE TPI AND TPF MANEUVERS.
024350,000046: 
024351,000047:                                                                                                  #  THE S17.1 ROUTINE EXTRAPOLATES THE STATE VECTORS OF BOTH VEHICLES TO THE TPI TIME AND COMPUTES THE
024352,000048:                                                                                                  #  RELATIVE PHASE ANGLE BETWEEN THE VEHICLES, THE ALTITUDE DIFFERENCE (I.E. THE MAGNITUDE DIFFERENCE OF THE 
024353,000049:                                                                                                  #  POSITION VECTORS) AND SELECTS A SEARCH SECTOR BASED ON THE SIGN OF THE ALTITUDE DIFFERENCE.
024354,000050: 
024355,000051:                                                                                                  #  THE S17.2 ROUTINE FURTHER DEFINES THE SEARCH SECTOR BY COMPUTING ANGULAR LIMITS AND USES THE TIME THETA
024356,000052:                                                                                                  #  SUBROUTINE TO COMPUTE THE SEARCH START AND END TIMES.  THE SEARCH IS THEN MADE IN AN ITERATIVE LOOP USING THE
024357,000053:                                                                                                  #  LAMBERT SUBROUTINE TO COMPUTE THE VELOCITIES REQUIRED AT TPI TIME AND AT TPF TIME.  EXIT FROM THE SEARCH LOOP
024358,000054:                                                                                                  #  IS MADE WHEN SOLUTION CRITERIA ARE MET (NORMAL EXIT) OR AS SOON AS IT IS EVIDENT THAT NO SOLUTION EXISTS IN
024359,000055:                                                                                                  #  THE SECTOR SEARCHED.
024360,000056: 
024361,000057:                                                                                                  #  CALLING SEQUENCE
024362,000058: 
024363,000059:                                                                                                  #        BOTH ROUTINES ARE CALLED IN INTERPRETIVE CODE AND RETURN VIA QPRET.  S17.1 HAS ONLY A NORMAL EXIT.
024364,000060:                                                                                                  #        S17.2 RETURNS VIA QPRET FOR NORMAL EXIT AND TO ALARUMS FOR ERROR EXIT.
024365,000061: 
024366,000062:                                                                                                  #  SUBROUTINES CALLED
024367,000063: 
024368,000064:                                                                                                  #        CSMCONIC
024369,000065:                                                                                                  #        LEMCONIC
024370,000066:                                                                                                  #        TIMETHET
024371,000067:                                                                                                  #        INITVEL
024372,000068: 
024373,000069: 36,2012                                           BANK     36                                    
024374,000070: 35,2000                                           SETLOC   P17S1                                 
024375,000071: 35,2000                                           BANK                                           
024376,000072: 
024377,000073: 35,3123                                           COUNT    36/TPI                                
024378,000074: 
024379,000075: 35,3123  E7,1537                                  EBANK=   RACT3                                 
024380,000076: 
024381,000077:                                                                                                  #  **** TEMPORARY ****
024382,000078: 
024383,000079: 35,3123           00004 31566  HPE                2DEC     157420.0   B-29                       #  EARTH'S MIN. PERICENTER ALTITUDE 85 N.M.
024384,000080: 
024385,000081: 35,3125           00000 12326  HPL                2DEC     10668.0213 B-29                       #  MOON:S MIN. PERICENTER ALTITUDE 35000 FT
024386,000082: 
024387,000083: 35,3127           00002 16100  CDSEC              2DEC     40000      B-28                       
024388,000084: 
024389,000085: 35,3131           00000 35230  CLSEC              2DEC     15000      B-28                       
024390,000086: 
024391,000087: 35,3133           12137 06033  PIINVERS           2DEC     .3183098862                            
024392,000088: 
024393,000089: 35,3135           06161 30707  SEC1THET           2DEC     .1944444444                            
024394,000090: 

Page 552

024396,000092: 35,3137           35252 25253  SEC2THET           2DEC     .9166666667                            
024397,000093: 
024398,000094: 35,3141           67777 77777  MANYFEET           2DEC     -1.0       B-2                        
024399,000095: 
024400,000096: 35,3143           00000 30760  LIMVEL             2DEC     .6096      E-2        B-7             #  2FPS
024401,000097: 
024402,000098: 35,3145           00000 00114  DFTMOON            2DEC     .1524      E3         B-29            #  500 FEET
024403,000099: 
024404,000100: 35,3147           00040 30447  DP-.002            2DEC     0.002                                 
024405,000101: 
024406,000102: 36,2000                                           SETLOC   P17S                                  
024407,000103: 36,2000                                           BANK                                           
024408,000104: 36,2012           71220        S17.1              STQ      DLOAD                                 
024409,000105: 36,2013           01340                                    NORMEX                                
024410,000106: 36,2014           03663                                    TTPI                                  
024411,000107: 36,2015           34041                           STCALL   TDEC1                                 #  ADVANCE PASSIVE VEHICLE TO TPI
024412,000108: 36,2016           27126                                    LEMCONIC                              
024413,000109: 36,2017           77624                           CALL                                           
024414,000110: 36,2020           45233                                    LEMSTORE                              
024415,000111: 36,2021           77745                           DLOAD                                          
024416,000112: 36,2022           03663                                    TTPI                                  
024417,000113: 36,2023           34041                           STCALL   TDEC1                                 #  ADVANCE ACTIVE VEHICLE TO TPI
024418,000114: 36,2024           27114                                    CSMCONIC                              
024419,000115: 36,2025           77624                           CALL                                           
024420,000116: 36,2026           45243                                    CSMSTORE                              
024421,000117: 36,2027           77775                           VLOAD                                          
024422,000118: 36,2030           03540                                    RACT3                                 
024423,000119: 36,2031           63246                           ABVAL    PDVL                                  #  /RA/ 0D                       PL 2D
024424,000120: 36,2032           03554                                    RPASS3                                
024425,000121: 36,2033           65256                           UNIT     PDDL                                  #  UNIT RP 0D                    PL 6D
024426,000122: 36,2034           43021                           BDSU     SET                                   
024427,000123: 36,2035           00045                                    36D                                   #  /RP/ -/RA/
024428,000124: 36,2036           00076                                    KFLAG                                 #  OFF = +
024429,000125: 36,2037           43040                           BMN      CLEAR                                 
024430,000126: 36,2040           74042                                    +2                                    
024431,000127: 36,2041           00276                                    KFLAG                                 #  ON = -
024432,000128: 36,2042           27754                           STOVL    DELHITE                               
024433,000129: 36,2043           00001                                    0D                                    
024434,000130: 36,2044           53435                           VXV      UNIT                                  
024435,000131: 36,2045           03562                                    VPASS3                                
024436,000132: 36,2046           27646                           STOVL    E2                                    #  ALMOST IT SAVE FOR 17.2
024437,000133: 36,2047           03540                                    RACT3                                 
024438,000134: 36,2050           46206                           PUSH     VPROJ                                 
024439,000135: 36,2051           03646                                    E2                                    
024440,000136: 36,2052           51352                           VSL2     BVSU                                  #  RPA
024441,000137: 36,2053           50256                           UNIT     DOT                                   
024442,000138: 36,2054           00001                                    0D                                    
024443,000139: 36,2055           65552                           SL1      ACOS                                  
024444,000140: 36,2056           77715                           PDVL                                           
024445,000141: 36,2057           50235                           VXV      DOT                                   

Page 553

024447,000143: 36,2060           03540                                    RACT3                                 
024448,000144: 36,2061           03646                                    E2                                    
024449,000145: 36,2062           75325                           PDDL     SIGN                                  
024450,000146: 36,2063           77626                           STADR                                          
024451,000147: 36,2064           61160                           STODL    THETZERO                              #  CENTRAL ANGLE
024452,000148: 36,2065           00047                                    X1                                    
024453,000149: 36,2066           37746                           STCALL   XRS                                   #  SAVE INDICES FOR FURTHER USE
024454,000150: 36,2067           01340                                    NORMEX                                #    += ACTIVE AHEAD  -= ACTIVE BEHIND
024455,000151: 36,2070           77220        S17.2              STQ      VLOAD                                 #  COMPUTE SEARCH SECTOR LIMITS
024456,000152: 36,2071           03657                                    QTEMP                                 
024457,000153: 36,2072           03540                                    RACT3                                 
024458,000154: 36,2073           50256                           UNIT     DOT                                   
024459,000155: 36,2074           03646                                    E2                                    
024460,000156: 36,2075           75446                           ABS      SQRT                                  
024461,000157: 36,2076           43352                           SL1      DAD                                   
024462,000158: 36,2077           33150                                    DP-.002                               #  ADD .002 RADIANS TO IT
024463,000159: 36,2100           57414                           BON      DCOMP                                 #  GIVES CORRECT SINE, COSINE MUST BE
024464,000160: 36,2101           00316                                    KFLAG                                 #  COMP. ADD .5 FOR ANGLE
024465,000161: 36,2102           74103                                    +1                                    
024466,000162:                                                                                                  #  PHI(0)=180-(-(THETAZERO +K5IT)), PHI(I)=180-(-(THETAZERO+K2IT))
024467,000163:                                                                                                  #  SIN(180-ALPHA)=SIN(ALPHA) ETC
024468,000164: 36,2103           40205                           DMP      SETPD                                 
024469,000165: 36,2104           33134                                    PIINVERS                              #  REVOLUTIONARY HERES TWO IT
024470,000166: 36,2105           00001                                    0D                                    
024471,000167: 36,2106           45206                           PUSH     DSU                                   
024472,000168: 36,2107           02617                                    THETZERO                              
024473,000169: 36,2110           02611                           STORE    IT                                    #  PHI(I) , -(THETZERO + K2IT)
024474,000170: 36,2111           41525                           PDDL     PUSH                                  
024475,000171: 36,2112           43342                           SR1      DAD                                   
024476,000172: 36,2113           41415                           DAD      PUSH                                  #  PHI(0) , -(THETZERO + K5IT)
024477,000173: 36,2114           43156                           SIN      SET                                   
024478,000174: 36,2115           03466                                    RVSW                                  
024479,000175: 36,2116           16732                           STODL    SNTH                                  
024480,000176: 36,2117           50146                           COS      BMN                                   
024481,000177: 36,2120           74122                                    +2                                    
024482,000178: 36,2121           77676                           DCOMP                                          
024483,000179: 36,2122           16734                           STODL    CSTH                                  
024484,000180: 36,2123           03746                                    XRS                                   
024485,000181: 36,2124           24047                           STOVL    X1                                    
024486,000182: 36,2125           03554                                    RPASS3                                
024487,000183: 36,2126           77657                           VSR*                                           
024488,000184: 36,2127           57176                                    0,2                                   
024489,000185: 36,2130           26657                           STOVL    RVEC                                  
024490,000186: 36,2131           03562                                    VPASS3                                
024491,000187: 36,2132           77657                           VSR*                                           
024492,000188: 36,2133           57176                                    0,2                                   
024493,000189: 36,2134           36746                           STCALL   VVEC                                  
024494,000190: 36,2135           24744                                    TIMETHET                              
024495,000191: 36,2136           77745                           DLOAD                                          #  SAVE START TIME AND GET END TIME
024496,000192: 36,2137           00037                                    T                                     

Page 554

024498,000194: 36,2140           03752                           STORE    TF                                    
024499,000195: 36,2141           16627                           STODL    TFO                                   
024500,000196: 36,2142           02611                                    IT                                    
024501,000197: 36,2143           73406                           PUSH     SIN                                   
024502,000198: 36,2144           16732                           STODL    SNTH                                  
024503,000199: 36,2145           50146                           COS      BMN                                   
024504,000200: 36,2146           74150                                    +2                                    
024505,000201: 36,2147           77676                           DCOMP                                          
024506,000202: 36,2150           02734                           STORE    CSTH                                  
024507,000203: 36,2151           45150                           LXA,1    CALL                                  
024508,000204: 36,2152           03745                                    XRS                                   
024509,000205: 36,2153           24744                                    TIMETHET                              
024510,000206:                                                                                                  #  INITIALIZE LOOP
024511,000207: 36,2154           43145                           DLOAD    CLEAR                                 
024512,000208: 36,2155           00037                                    T                                     
024513,000209: 36,2156           03661                                    ITSWICH                               
024514,000210: 36,2157           16621                           STODL    TFI                                   #  SAVE TIME FOR LOOP TEST
024515,000211: 36,2160           15343                                    DPPOSMAX                              
024516,000212: 36,2161           16623                           STODL    DELVEE                                
024517,000213: 36,2162           33142                                    MANYFEET                              
024518,000214: 36,2163           16625                           STODL    HP                                    
024519,000215: 36,2164           33136                                    SEC1THET                              #  70 DEGREES
024520,000216: 36,2165           71214                           BON      DLOAD                                 
024521,000217: 36,2166           00316                                    KFLAG                                 
024522,000218: 36,2167           74171                                    +2                                    
024523,000219: 36,2170           33140                                    SEC2THET                              #  330 DEGREES
024524,000220: 36,2171           37750                           STCALL   THETL                                 
024525,000221: 36,2172           74214                                    CONCAUL                               
024526,000222: 36,2173           70545        BIS                DLOAD    SR1                                   
024527,000223: 36,2174           02734                                    CSTH                                  
024528,000224: 36,2175           14021                           STODL    COSTH                                 
024529,000225: 36,2176           02732                                    SNTH                                  
024530,000226: 36,2177           77742                           SR1                                            
024531,000227: 36,2200           34023                           STCALL   SINTH                                 #  GET 4 QUADRANT THETA
024532,000228: 36,2201           47256                                    ARCTRIG                               
024533,000229: 36,2202           43244                           BPL      DAD                                   
024534,000230: 36,2203           74205                                    +2                                    
024535,000231: 36,2204           15343                                    DPPOSMAX                              #  PUT THETA BETWEEN 0,1
024536,000232: 36,2205           65221                           BDSU     PDDL                                  
024537,000233: 36,2206           03750                                    THETL                                 
024538,000234: 36,2207           03752                                    TF                                    
024539,000235: 36,2210           75225                           DSU      SIGN                                  #  FAST TIMES
024540,000236: 36,2211           02621                                    TFI                                   
024541,000237: 36,2212           77640                           BMN                                            
024542,000238: 36,2213           74416                                    RNGETEST                              #  TIME MUST HAVE A STOP
024543,000239:                                                                                                  #  ADVANCE PASSIVE FOR TARGET VECTOR
024544,000240: 36,2214           77745        CONCAUL            DLOAD                                          
024545,000241: 36,2215           03663                                    TTPI                                  
024546,000242: 36,2216           43015                           DAD      BON                                   
024547,000243: 36,2217           03752                                    TF                                    

Page 555

024549,000245: 36,2220           01312                                    AVFLAG                                
024550,000246: 36,2221           74226                                    ADVCSM                                
024551,000247: 36,2222           34041                           STCALL   TDEC1                                 
024552,000248: 36,2223           27126                                    LEMCONIC                              
024553,000249: 36,2224           77650                           GOTO                                           
024554,000250: 36,2225           74230                                    JUNCT3                                
024555,000251: 36,2226           34041        ADVCSM             STCALL   TDEC1                                 
024556,000252: 36,2227           27114                                    CSMCONIC                              
024557,000253:                                                                                                  #  SAVE BACK VALUES OF HP AND DELVEE
024558,000254: 36,2230           77775        JUNCT3             VLOAD                                          
024559,000255: 36,2231           00007                                    VATT                                  
024560,000256: 36,2232           27640                           STOVL    VPASS4                                
024561,000257: 36,2233           00001                                    RATT                                  
024562,000258: 36,2234           03632                           STORE    RPASS4                                
024563,000259: 36,2235           17415                           STODL    RTARG                                 
024564,000260: 36,2236           03752                                    TF                                    
024565,000261: 36,2237           17423                           STODL    DELLT4                                
024566,000262: 36,2240           02625                                    HP                                    
024567,000263: 36,2241           16631                           STODL    HPO                                   
024568,000264: 36,2242           02623                                    DELVEE                                
024569,000265: 36,2243           16633                           STODL    DELVEO                                
024570,000266:                                                                                                  #  PREPARE FOR LAMBERT
024571,000267: 36,2244           03663                                    TTPI                                  
024572,000268: 36,2245           17503                           STODL    INTIME                                
024573,000269: 36,2246           03746                                    XRS                                   
024574,000270: 36,2247           17746                           STODL    RTX1                                  
024575,000271: 36,2250           15335                                    HI6ZEROS                              
024576,000272: 36,2251           65201                           SETPD    PDDL                                  
024577,000273: 36,2252           00001                                    0D                                    
024578,000274: 36,2253           33122                                    EPSFOUR                               
024579,000275: 36,2254           77715                           PDVL                                           
024580,000276: 36,2255           03540                                    RACT3                                 
024581,000277: 36,2256           27570                           STOVL    RINIT                                 
024582,000278: 36,2257           03546                                    VACT3                                 
024583,000279: 36,2260           37576                           STCALL   VINIT                                 
024584,000280: 36,2261           22000                                    INITVEL                               
024585,000281:                                                                                                  #  COMPUTE H ET CETERA
024586,000282: 36,2262           52375                           VLOAD    VSU                                   
024587,000283: 36,2263           03620                                    VTPRIME                               
024588,000284: 36,2264           03640                                    VPASS4                                
024589,000285: 36,2265           41446                           ABVAL    PUSH                                  
024590,000286: 36,2266           26637                           STOVL    RELDELV                               #  /V2-VP(TPI+TF)/
024591,000287: 36,2267           03646                                    DELVEET3                              #  V1-VA
024592,000288: 36,2270           77646                           ABVAL                                          #  /V1-VA/
024593,000289: 36,2271           02635                           STORE    MAGVTPI                               
024594,000290: 36,2272           45415                           DAD      STADR                                 
024595,000291: 36,2273           61154                           STODL    DELVEE                                
024596,000292: 36,2274           03746                                    XRS                                   
024597,000293: 36,2275           24047                           STOVL    X1                                    
024598,000294: 36,2276           03612                                    VIPRIME                               

Page 556

024600,000296: 36,2277           77657                           VSR*                                           
024601,000297: 36,2300           57176                                    0,2                                   
024602,000298: 36,2301           26746                           STOVL    VVEC                                  
024603,000299: 36,2302           03540                                    RACT3                                 
024604,000300: 36,2303           77657                           VSR*                                           
024605,000301: 36,2304           57176                                    0,2                                   
024606,000302: 36,2305           36657                           STCALL   RVEC                                  
024607,000303: 36,2306           45163                                    PERIAPO                               
024608,000304: 36,2307           71354                           LXA,2    DLOAD                                 
024609,000305: 36,2310           03746                                    XRS        +1                         
024610,000306: 36,2311           77657                           SL*                                            
024611,000307: 36,2312           57576                                    0,2                                   
024612,000308: 36,2313           02625                           STORE    HP                                    
024613,000309:                                                                                                  #  ITSWICH DENOTES INTERPOLATION -- SOLUTION ACCEPTANCE IS FORCED
024614,000310: 36,2314           71214                           BON      DLOAD                                 
024615,000311: 36,2315           03701                                    ITSWICH                               
024616,000312: 36,2316           74427                                    ENDEN                                 
024617,000313: 36,2317           02321                                    HPERMIN                               
024618,000314: 36,2320           50025                           DSU      BMN                                   
024619,000315: 36,2321           02625                                    HP                                    
024620,000316: 36,2322           74365                                    HALFSAFE                              
024621,000317: 36,2323           45325                           PDDL     DSU                                   #  WAS PERICENTER ALT SAFE
024622,000318: 36,2324           02321                                    HPERMIN                               
024623,000319: 36,2325           02631                                    HPO                                   
024624,000320: 36,2326           45240                           BMN      DSU                                   #  (HPLIM-HPO)-(HPLIM-HP)=HP-HPO
024625,000321: 36,2327           74344                                    INTERP                                #  SOLUTION AT HAND
024626,000322: 36,2330           71240                           BMN      DLOAD                                 
024627,000323: 36,2331           73254                                    ALARUMS                               #  ITS GETTING WORSE - SOUND THE ALARM
024628,000324: 36,2332           33130                                    CDSEC                                 
024629,000325: 36,2333           57414        JUNCT1             BOFF     DCOMP                                 #  OFF IS PLUS ON IS MINUS
024630,000326: 36,2334           00356                                    KFLAG                                 
024631,000327: 36,2335           74336                                    +1                                    
024632,000328: 36,2336           03744                           STORE    DELTEE                                
024633,000329: 36,2337           43345        JUNCT2             DLOAD    DAD                                   
024634,000330: 36,2340           03744                                    DELTEE                                
024635,000331: 36,2341           03752                                    TF                                    
024636,000332: 36,2342           37752                           STCALL   TF                                    
024637,000333: 36,2343           74173                                    BIS                                   #  RECYCLE
024638,000334: 36,2344           45214        INTERP             SET      DSU                                   #  HP-HPO
024639,000335: 36,2345           03461                                    ITSWICH                               
024640,000336: 36,2346           65301                           NORM     PDDL                                  
024641,000337: 36,2347           00047                                    X1                                    
024642,000338: 36,2350           33146                                    DFTMOON                               
024643,000339: 36,2351           45215                           DAD      DSU                                   
024644,000340: 36,2352           02321                                    HPERMIN                               
024645,000341: 36,2353           02625                                    HP                                    
024646,000342: 36,2354           70501                           NORM     SR1                                   
024647,000343: 36,2355           00050                                    X2                                    
024648,000344: 36,2356           56264                           XSU,2    DDV                                   
024649,000345: 36,2357           00046                                    X1                                    

Page 557

024651,000347: 36,2360           53605                           DMP      SR*                                   
024652,000348: 36,2361           03744                                    DELTEE                                
024653,000349: 36,2362           57177                                    0          -1,2                       
024654,000350: 36,2363           37744                           STCALL   DELTEE                                
024655,000351: 36,2364           74337                                    JUNCT2                                
024656,000352: 36,2365           45325        HALFSAFE           PDDL     DSU                                   #  SAVE HP-HPLIM FOR POSSIBLE
024657,000353: 36,2366           02623                                    DELVEE                                
024658,000354: 36,2367           02633                                    DELVEO                                #  SAVE THIS TOO
024659,000355: 36,2370           51406                           PUSH     ABS                                   
024660,000356: 36,2371           50025                           DSU      BMN                                   
024661,000357: 36,2372           33144                                    LIMVEL                                #  2 FT PS
024662,000358: 36,2373           74427                                    ENDEN                                 
024663,000359: 36,2374           45345                           DLOAD    DSU                                   
024664,000360: 36,2375           02321                                    HPERMIN                               
024665,000361: 36,2376           02631                                    HPO                                   
024666,000362: 36,2377           77725                           PDDL                                           
024667,000363: 36,2400           71240                           BMN      DLOAD                                 
024668,000364: 36,2401           74410                                    LRGRDVO                               
024669,000365: 36,2402           71244                           BPL      DLOAD                                 
024670,000366: 36,2403           74344                                    INTERP                                
024671,000367: 36,2404           03744                                    DELTEE                                
024672,000368: 36,2405           57542                           SR1      DCOMP                                 
024673,000369: 36,2406           37744                           STCALL   DELTEE                                
024674,000370: 36,2407           74337                                    JUNCT2                                
024675,000371: 36,2410           77745        LRGRDVO            DLOAD                                          
024676,000372: 36,2411           71240                           BMN      DLOAD                                 
024677,000373: 36,2412           74337                                    JUNCT2                                
024678,000374: 36,2413           33132                                    CLSEC                                 
024679,000375: 36,2414           77650                           GOTO                                           
024680,000376: 36,2415           74333                                    JUNCT1                                
024681,000377:                                                                                                  #  TIME RAN OUT ASSUME SOLUTION IF SAFE PERICENTER
024682,000378: 36,2416           45345        RNGETEST           DLOAD    DSU                                   
024683,000379: 36,2417           02625                                    HP                                    
024684,000380: 36,2420           02321                                    HPERMIN                               
024685,000381: 36,2421           71240                           BMN      DLOAD                                 
024686,000382: 36,2422           73254                                    ALARUMS                               
024687,000383: 36,2423           03752                                    TF                                    
024688,000384: 36,2424           77625                           DSU                                            
024689,000385: 36,2425           03744                                    DELTEE                                
024690,000386: 36,2426           03752                           STORE    TF                                    #  TIME OF SOLUTION
024691,000387: 36,2427           77775        ENDEN              VLOAD                                          
024692,000388: 36,2430           03620                                    VTPRIME                               
024693,000389: 36,2431           65241                           DOT      PDDL                                  #  SG2 WITH MAGNITUDE
024694,000390: 36,2432           03632                                    RPASS4                                
024695,000391: 36,2433           02637                                    RELDELV                               
024696,000392: 36,2434           45565                           SIGN     STADR                                 #  NOW SIGN(RELDELV)=SIGN(SG2)
024697,000393: 36,2435           41140                           STCALL   RELDELV                               
024698,000394: 36,2436           16441                                    TRANSANG                              #  COMPUTE OMEGA T, CENTRAL ANGLE
024699,000395: 36,2437           50375                           VLOAD    DOT                                   
024700,000396: 36,2440           03540                                    RACT3                                 

Page 558

024702,000398: 36,2441           03612                                    VIPRIME                               #  SG1
024703,000399: 36,2442           51165                           SIGN     BPL                                   #  IF POSITIVE THEN SG1 = SG2 OTHERWISE
024704,000400: 36,2443           02637                                    RELDELV                               
024705,000401: 36,2444           74454                                    USEKAY                                #  SIGN(SG2-SG1)=SIGN(SG2)=SIGN(RELDELV)
024706,000402: 36,2445           57535                           SLOAD    DCOMP                                 
024707,000403: 36,2446           33117                                    DECTWO                                
024708,000404: 36,2447           51165                           SIGN     BPL                                   
024709,000405: 36,2450           02637                                    RELDELV                               
024710,000406: 36,2451           74462                                    NEXUS                                 
024711,000407: 36,2452           52076                           DCOMP    GOTO                                  
024712,000408: 36,2453           74460                                    USEKAY     +4                         
024713,000409: 36,2454           43135        USEKAY             SLOAD    BON                                   
024714,000410: 36,2455           33117                                    DECTWO                                
024715,000411: 36,2456           00316                                    KFLAG                                 
024716,000412: 36,2457           74462                                    NEXUS                                 
024717,000413: 36,2460           77625                           DSU                                            
024718,000414: 36,2461           36150                                    P21ONENN                              
024719,000415: 36,2462           17766        NEXUS              STODL    NN1                                   
024720,000416: 36,2463           02625                                    HP                                    
024721,000417: 36,2464           36641                           STCALL   POSTTPI                               
024722,000418: 36,2465           03657                                    QTEMP                                 
024723,000419: 07,2441                                           BANK     07                                    
024724,000420: 07,2000                                           SETLOC   XANG                                  
024725,000421: 07,2000                                           BANK                                           
024726,000422: 07,2441                                           COUNT    07/XANG                               
024727,000423: 
024728,000424:                                                                                                  #  CENTRAL ANGLE SUBROUTINE
024729,000425: 
024730,000426:                                                                                                  #  THIS SUBROUTINE COMPUTES THE CENTRAL ANGLE OF TRAVEL OF THE
024731,000427:                                                                                                  #  PASSIVE VEHICLE DURING THE TRANSFER.
024732,000428: 
024733,000429: 07,2441           40220        TRANSANG           STQ      SETPD                                 
024734,000430: 07,2442           02370                                    SUBEXIT                               
024735,000431: 07,2443           00001                                    0                                     
024736,000432: 07,2444           73150                           LXA,1    LXA,2                                 
024737,000433: 07,2445           03745                                    XRS                                   
024738,000434: 07,2446           03746                                    XRS        +1                         
024739,000435: 07,2447           53775                           VLOAD    VSR*                                  
024740,000436: 07,2450           03640                                    VPASS4                                
024741,000437: 07,2451           57176                                    0,2                                   
024742,000438: 07,2452           22746                           STODL*   VVEC                                  
024743,000439: 07,2453           11742                                    MUTABLE    +2,1                       
024744,000440: 07,2454           53715                           PDVL     VSR*                                  #  SQRT MU (+18 OR +15)                  00D
024745,000441: 07,2455           03632                                    RPASS4                                
024746,000442: 07,2456           57176                                    0,2                                   
024747,000443: 07,2457           64646                           ABVAL    PDDL*                                 #  MAGNITUDE OF R        (+29 OR +27)    02D
024748,000444: 07,2460           11740                                    MUTABLE,1                             
024749,000445: 07,2461           47515                           PDVL     VSQ                                   #  1/MU                  (+34 OR +28)    04D
024750,000446: 07,2462           02746                                    VVEC                                  
024751,000447: 07,2463           57301                           NORM     DMPR                                  #  PUSH LIST AT 02D
024752,000448: 07,2464           00047                                    X1                                    

Page 559

024754,000450: 07,2465           53605                           DMP      SRR*                                  
024755,000451: 07,2466           00003                                    02D                                   
024756,000452: 07,2467           21576                                    0          -3,1                       
024757,000453: 07,2470           77621                           BDSU                                           #  R V**/MU              (+6)
024758,000454: 07,2471           11616                                    D1/32                                 
024759,000455: 07,2472           65301                           NORM     PDDL                                  
024760,000456: 07,2473           00047                                    X1                                    #  (2 - R V**/MU)        (+6-N)
024761,000457: 07,2474           56362                           SR1R     DDV                                   #  MAGNITUDE OF R        (+30 OR +28)
024762,000458: 07,2475           41457                           SL*      PUSH                                  #  R/(2 - R V**/MU)      (+29 OR +27)    02D
024763,000459: 07,2476           20174                                    0          -5,1                       
024764,000460: 07,2477           75542                           SR1      SQRT                                  
024765,000461: 07,2500           77605                           DMP                                            
024766,000462: 07,2501           65301                           NORM     PDDL                                  #  ASUBP***                              00D
024767,000463: 07,2502           00047                                    X1                                    
024768,000464: 07,2503           56342                           SR1      DDV                                   
024769,000465: 07,2504           53605                           DMP      SL*                                   
024770,000466: 07,2505           03752                                    TF                                    
024771,000467: 07,2506           20201                                    0,1                                   
024772,000468: 07,2507           60325                           PDDL     NORM                                  
024773,000469: 07,2510           11630                                    2PISC                                 
024774,000470: 07,2511           00047                                    X1                                    
024775,000471: 07,2512           56325                           PDDL     DDV                                   
024776,000472: 07,2513           77657                           SL*                                            
024777,000473: 07,2514           20176                                    0          -3,1                       #  CENTANG = (SQRT(MU/ASUP***)TF)
024778,000474: 07,2515           37754                           STCALL   CENTANG                               #  IN REVOLUTIONS B-0
024779,000475: 07,2516           02370                                    SUBEXIT                               
024780,000476: 35,3151                                           BANK     35                                    
024781,000477: 35,2000                                           SETLOC   P17S1                                 
024782,000478: 35,2000                                           BANK                                           
024783,000479: 35,3151                                           COUNT    35/P17                                
024784,000480: 
024785,000481:                                                                                                  #  TPI SEARCH DISPLAY ROUTINE
024786,000482: 
024787,000483: 35,3151           04627        P17                TC       AVFLAGA                               #  AVFLAG = CSM, SET TRACK + UPDATE FLAGS
024788,000484: 35,3152           03154                           TC       P17.1                                 
024789,000485: 35,3153           04642        P77                TC       AVFLAGP                               #  AVFLAG = LEM, SET TRACK + UPDATE FLAGS
024790,000486: 35,3154           04647        P17.1              TC       P20FLGON                              #        SET UPDATE FLAG
024791,000487: 35,3155           34614                           CAF      V06N37                                #        DISPLAY TTPI TIME
024792,000488: 35,3156           04575                           TC       VNPOOH                                
024793,000489: 35,3157           06006                           TC       INTPRET                               
024794,000490: 35,3160           45014                           CLEAR    CALL                                  
024795,000491: 35,3161           00670                                    UPDATFLG                              
024796,000492: 35,3162           74012                                    S17.1                                 #  UPDATE STATE VECTORS TO TTPI
024797,000493: 35,3163           76014                           SET      AXT,1                                 
024798,000494: 35,3164           00470                                    UPDATFLG                              
024799,000495: 35,3165           00002                           DEC      2          B-14                       #  DELTA H = 2 K POSITIVE, KFLAG OFF
024800,000496: 35,3166           76014                           BOFF     AXT,1                                 
024801,000497: 35,3167           00356                                    KFLAG                                 
024802,000498: 35,3170           73172                                    +2                                    
024803,000499: 35,3171           00001                           DEC      1          B-14                       #  DELTA H = 1 K NEGATIVE, KFLAG ON

Page 560

024805,000501: 35,3172           77530                           SXA,1    EXIT                                  
024806,000502: 35,3173           01132                                    OPTION2                               
024807,000503: 35,3174           33263                           CAF      V06N72                                #  DISPLAY PHI, DELTA H, SEARCH OPTION K
024808,000504: 35,3175           03237                           TC       VNCOMP17                              
024809,000505: 35,3176           06006                           TC       INTPRET                               
024810,000506: 35,3177           43014                           CLEAR    SET                                   
024811,000507: 35,3200           00670                                    UPDATFLG                              
024812,000508: 35,3201           00076                                    KFLAG                                 
024813,000509: 35,3202           45335                           SLOAD    DSU                                   
024814,000510: 35,3203           01133                                    OPTION2                               #  RESET KFLAG ON FOR OPTION =1
024815,000511: 35,3204           36150                                    P21ONENN                              #             OFF FOR OPTION =2
024816,000512: 35,3205           43030                           BHIZ     CLEAR                                 
024817,000513: 35,3206           73210                                    +2                                    
024818,000514: 35,3207           00276                                    KFLAG                                 
024819,000515: 35,3210           46135                           SLOAD    BHIZ                                  
024820,000516: 35,3211           03747                                    XRS        +1                         
024821,000517: 35,3212           73216                                    +4                                    
024822,000518: 35,3213           52145                           DLOAD    GOTO                                  
024823,000519: 35,3214           33126                                    HPL                                   
024824,000520: 35,3215           73220                                    P17.2                                 
024825,000521: 35,3216           77745                           DLOAD                                          
024826,000522: 35,3217           33124                                    HPE                                   
024827,000523: 35,3220           36321        P17.2              STCALL   HPERMIN                               
024828,000524: 35,3221           74070                                    S17.2                                 
024829,000525: 35,3222           77414                           SET      EXIT                                  
024830,000526: 35,3223           00470                                    UPDATFLG                              
024831,000527: 35,3224           34616        P17.3              CAF      V06N58                                #  DISPLAY DELTA VTPI, DELTA VTPF, AND H
024832,000528: 35,3225           03237                           TC       VNCOMP17                              
024833,000529: 35,3226           34615                           CAF      V06N55                                #  DISPLAY PERICENTER CODE AND CENTRAL ANG,
024834,000530: 35,3227           04662                           TC       BANKCALL                              
024835,000531: 35,3230           21057                           CADR     GOFLASHR                              
024836,000532: 35,3231           04106                           TC       GOTOPOOH                              #  TERMINATE PROGRAM
024837,000533: 35,3232           04106                           TC       GOTOPOOH                              #  END PROGRAM
024838,000534: 35,3233           03154                           TC       P17.1                                 #  RECYCLE WITH NEW TTPI OR SEARCH OPTION
024839,000535: 35,3234           35016                           CAF      TWO                                   #  BLANK R2
024840,000536: 35,3235           05526                           TC       BLANKET                               
024841,000537: 35,3236           15217                           TCF      ENDOFJOB                              
024842,000538: 35,3237  E4,1767                                  EBANK=   RTRN                                  
024843,000539: 
024844,000540: 35,3237           00006        VNCOMP17           EXTEND                                         
024845,000541: 35,3240           23766                           QXCH     QSAVED                                
024846,000542: 35,3241           55765                           TS       VERBNOUN                              
024847,000543: 35,3242           31765                           CA       VERBNOUN                              
024848,000544: 35,3243           04662                           TCR      BANKCALL                              
024849,000545: 35,3244           20720                           CADR     GOFLASH                               
024850,000546: 35,3245           03242                           TC       -3                                    #  TERMINATE ILLEGAL REDISPLAY
024851,000547: 35,3246           01766                           TC       QSAVED                                #  PROCEED
024852,000548: 35,3247           40154                           CS       MPAC                                  #  RECYCLE WITH NEW TPI TIME
024853,000549: 35,3250           65012                           AD       BIT6                                  #  OR PROCEED WITH NEW SEARCH OPTION
024854,000550: 35,3251           00006                           EXTEND                                         

Page 561

024856,000552: 35,3252           13154                           BZF      P17.1                                 
024857,000553: 35,3253           03242                           TC       VNCOMP17   +3                         
024858,000554: 35,3254           77414        ALARUMS            SET      EXIT                                  
024859,000555: 35,3255           00470                                    UPDATFLG                              
024860,000556: 35,3256           05650                           TC       ALARM                                 
024861,000557: 35,3257           00124                           OCT      00124                                 #  NO SAFE PERCENTER IN THIS SECTOR
024862,000558: 35,3260           35050                           CAF      V05N09                                
024863,000559: 35,3261           03237                           TC       VNCOMP17                              
024864,000560: 35,3262           04106                           TC       GOTOPOOH                              #  PROCEED ILLEGAL TERMINATE PROGRAM
024865,000561: 35,3263           01510        V06N72             VN       0672                                  
024866,000562: 

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