Source Code
024119,000001: # Copyright: Public domain.
024120,000002: # Filename: TPI_SEARCH.agc
024121,000003: # Purpose: Part of the source code for Colossus 2A, AKA Comanche 055.
024122,000004: # It is part of the source code for the Command Module's (CM)
024123,000005: # Apollo Guidance Computer (AGC), for Apollo 11.
024124,000006: # Assembler: yaYUL
024125,000007: # Contact: Ron Burkey <info@sandroid.org>.
024126,000008: # Website: www.ibiblio.org/apollo.
024127,000009: # Pages: 551-561
024128,000010: # Mod history: 2009-05-15 RSB Adapted from the Colossus249/ file of the
024129,000011: # same name, using Comanche055 page images.
024130,000012: # 2009-05-20 RSB Corrections: On p. 551, "SETLOC P17S" -> P17S1.
024131,000013:
024132,000014: # This source code has been transcribed or otherwise adapted from digitized
024133,000015: # images of a hardcopy from the MIT Museum. The digitization was performed
024134,000016: # by Paul Fjeld, and arranged for by Deborah Douglas of the Museum. Many
024135,000017: # thanks to both. The images (with suitable reduction in storage size and
024136,000018: # consequent reduction in image quality as well) are available online at
024137,000019: # www.ibiblio.org/apollo. If for some reason you find that the images are
024138,000020: # illegible, contact me at info@sandroid.org about getting access to the
024139,000021: # (much) higher-quality images which Paul actually created.
024140,000022:
024141,000023: # Notations on the hardcopy document read, in part:
024142,000024:
024143,000025: # Assemble revision 055 of AGC program Comanche by NASA
024144,000026: # 2021113-051. 10:28 APR. 1, 1969
024145,000027:
024146,000028: # This AGC program shall also be referred to as
024147,000029: # Colossus 2A
024148,000030:
024149,000031: # Page 551
024150,000032: # TPI SEARCH
024151,000033:
024152,000034: # PROGRAM DESCRIPTION S17.1 AND S17.2
024153,000035:
024154,000036: # FUNCTIONAL DESCRIPTION
024155,000037:
024156,000038: # THE TPI SEARCH ROUTINE DETERMINES THE MINIMUM TOTAL VELOCITY TRANSFER TRAJECTORY FROM A GIVEN TPI
024157,000039: # MANEUVER TIME WITHIN THE CONSTRAINT OF A SAFE PERICENTER. THIS VELOCITY IS THE SUM OF THE IMPULSIVE VELOCITIES
024158,000040: # FOR THE TPI AND TPF MANEUVERS.
024159,000041:
024160,000042: # THE S17.1 ROUTINE EXTRAPOLATES THE STATE VECTORS OF BOTH VEHICLES TO THE TPI TIME AND COMPUTES THE
024161,000043: # RELATIVE PHASE ANGLE BETWEEN THE VEHICLES, THE ALTITUDE DIFFERENCE (I.E., THE MAGNITUDE DIFFERENCE OF THE
024162,000044: # POSITION VECTORS) AND SELECTS A SEARCH SECTOR BASED ON THE SIGN OF THE ALTITUDE DIFFERENCE.
024163,000045:
024164,000046: # THE S17.2 ROUTINE FURTHER DEFINES THE SEARCH SECTOR BY COMPUTING ANGULAR LIMITS AND USES THE TIME THETA
024165,000047: # SUBROUTINE TO COMPUTE THE SEARCH START AND END TIMES. THE SEARCH IS THEN MADE IN AN ITERATIVE LOOP USING THE
024166,000048: # LAMBERT SUBROUTINE TO COMPUTE TEH VELOCITIES REQUIRED AT TPI TIME AND AT TPF TIME. EXIT FROM THE SEARCH LOOP
024167,000049: # IS MADE WHEN SOLUTION CRITERIA ARE MET (NORMAL EXIT) OR AS SOON AS IT IS EVIDENT THAT NO SOLUTION EXISTS IN
024168,000050: # THE SECTOR SEARCHED.
024169,000051:
024170,000052: # CALLING SEQUENCE
024171,000053:
024172,000054: # BOTH ROUTINES ARE CALLED IN INTERPRETIVE CODE AND RETURN VIA QPRET. S17.1 HAS ONLY A NORMAL EXIT.
024173,000055: # S17.2 RETURNS VIA QPRET FOR NORMAL EXIT AND TO ALARUMS FOR ERROR EXIT.
024174,000056:
024175,000057: # SUBROUTINES CALLED
024176,000058:
024177,000059: # CSMCONIC
024178,000060: # LEMCONIC
024179,000061: # TIMETHET
024180,000062: # INITVEL
024181,000063:
024182,000064: 36,2012 BANK 36
024183,000065: 35,2000 SETLOC P17S1
024184,000066: 35,2000 BANK
024185,000067:
024186,000068: 35,3123 COUNT 36/TPI
024187,000069:
024188,000070: 35,3123 E7,1537 EBANK= RACT3
024189,000071:
024190,000072: # **** TEMPORARY ****
024191,000073:
024192,000074: 35,3123 00004 31566 HPE 2DEC 157420.0 B-29 # EARTH'S MIN. PERICENTER ALTITUDE 85 N.M.
024193,000075:
024194,000076: 35,3125 00000 12326 HPL 2DEC 10668.0213 B-29 # MOON'S MIN. PERICENTER ALTITUDE 35000 FT.
024195,000077:
024196,000078: 35,3127 00002 16100 CDSEC 2DEC 40000 B-28
024197,000079:
024198,000080: 35,3131 00000 35230 CLSEC 2DEC 15000 B-28
024199,000081:
024200,000082: 35,3133 12137 06033 PIINVERS 2DEC .3183098862
024201,000083:
024202,000084: 35,3135 06161 30707 SEC1THET 2DEC .1944444444
024203,000085:
024204,000086: # Page 552
024205,000087: 35,3137 35252 25253 SEC2THET 2DEC .9166666667
024206,000088:
024207,000089: 35,3141 67777 77777 MANYFEET 2DEC -1.0 B-2
024208,000090:
024209,000091: 35,3143 00000 30760 LIMVEL 2DEC .6096 E-2 B-7 # 2FPS
024210,000092:
024211,000093: 35,3145 00000 00114 DFTMOON 2DEC .1524 E3 B-29 # 500 FEET
024212,000094:
024213,000095: 35,3147 00040 30447 DP-.002 2DEC 0.002
024214,000096:
024215,000097: 36,2000 SETLOC P17S
024216,000098: 36,2000 BANK
024217,000099: 36,2012 71220 S17.1 STQ DLOAD
024218,000100: 36,2013 01340 NORMEX
024219,000101: 36,2014 03663 TTPI
024220,000102: 36,2015 34041 STCALL TDEC1 # ADVANCE PASSIVE VEHICLE TO TPI
024221,000103: 36,2016 27126 LEMCONIC
024222,000104: 36,2017 77624 CALL
024223,000105: 36,2020 45233 LEMSTORE
024224,000106: 36,2021 77745 DLOAD
024225,000107: 36,2022 03663 TTPI
024226,000108: 36,2023 34041 STCALL TDEC1 # ADVANCE ACTIVE VEHICLE TO TPI
024227,000109: 36,2024 27114 CSMCONIC
024228,000110: 36,2025 77624 CALL
024229,000111: 36,2026 45243 CSMSTORE
024230,000112: 36,2027 77775 VLOAD
024231,000113: 36,2030 03540 RACT3
024232,000114: 36,2031 63246 ABVAL PDVL # /RA/ 0D PL 2D
024233,000115: 36,2032 03554 RPASS3
024234,000116: 36,2033 65256 UNIT PDDL # UNIT RP 0D PL 6D
024235,000117: 36,2034 43021 BDSU SET
024236,000118: 36,2035 00045 36D # /RP/ -/RA/
024237,000119: 36,2036 00076 KFLAG # OFF = +
024238,000120: 36,2037 43040 BMN CLEAR
024239,000121: 36,2040 74042 +2
024240,000122: 36,2041 00276 KFLAG # ON = -
024241,000123: 36,2042 27754 STOVL DELHITE
024242,000124: 36,2043 00001 0D
024243,000125: 36,2044 53435 VXV UNIT
024244,000126: 36,2045 03562 VPASS3
024245,000127: 36,2046 27646 STOVL E2 # ALMOST IT SAVE FOR 17.2
024246,000128: 36,2047 03540 RACT3
024247,000129: 36,2050 46206 PUSH VPROJ
024248,000130: 36,2051 03646 E2
024249,000131: 36,2052 51352 VSL2 BVSU # RPA
024250,000132: 36,2053 50256 UNIT DOT
024251,000133: 36,2054 00001 0D
024252,000134: 36,2055 65552 SL1 ACOS
024253,000135: 36,2056 77715 PDVL
024254,000136: 36,2057 50235 VXV DOT
024255,000137: # Page 553
024256,000138: 36,2060 03540 RACT3
024257,000139: 36,2061 03646 E2
024258,000140: 36,2062 75325 PDDL SIGN
024259,000141: 36,2063 77626 STADR
024260,000142: 36,2064 61160 STODL THETZERO # CENTRAL ANGLE
024261,000143: 36,2065 00047 X1
024262,000144: 36,2066 37746 STCALL XRS # SAVE INDICES FOR FURTHER USE
024263,000145: 36,2067 01340 NORMEX # += ACTIVE AHEAD -= ACTIVE BEHIND
024264,000146: 36,2070 77220 S17.2 STQ VLOAD # COMPUTE SEARCH SECTOR LIMITS
024265,000147: 36,2071 03657 QTEMP
024266,000148: 36,2072 03540 RACT3
024267,000149: 36,2073 50256 UNIT DOT
024268,000150: 36,2074 03646 E2
024269,000151: 36,2075 75446 ABS SQRT
024270,000152: 36,2076 43352 SL1 DAD
024271,000153: 36,2077 33150 DP-.002 # ADD .002 RADIANS TO IT
024272,000154: 36,2100 57414 BON DCOMP # GIVES CORRECT SINE, COSINE MUST BE
024273,000155: 36,2101 00316 KFLAG # COMP. ADD .5 FOR ANGLE
024274,000156: 36,2102 74103 +1
024275,000157: # PHI(0)=180-(-(THETAZERO +K5IT)), PHI(I)=180-(-THETAZERO+K2IT))
024276,000158: # SIN(180-ALPHA)=SIN(ALPHA) ETC
024277,000159: 36,2103 40205 DMP SETPD
024278,000160: 36,2104 33134 PIINVERS # REVOLUTIONARY HERES TWO IT
024279,000161: 36,2105 00001 0D
024280,000162: 36,2106 45206 PUSH DSU
024281,000163: 36,2107 02617 THETZERO
024282,000164: 36,2110 02611 STORE IT # PHI(I) , -(THETZERO + K2IT)
024283,000165: 36,2111 41525 PDDL PUSH
024284,000166: 36,2112 43342 SR1 DAD
024285,000167: 36,2113 41415 DAD PUSH # PHI(0) , -(THETZERO + K5IT)
024286,000168: 36,2114 43156 SIN SET
024287,000169: 36,2115 03466 RVSW
024288,000170: 36,2116 16732 STODL SNTH
024289,000171: 36,2117 50146 COS BMN
024290,000172: 36,2120 74122 +2
024291,000173: 36,2121 77676 DCOMP
024292,000174: 36,2122 16734 STODL CSTH
024293,000175: 36,2123 03746 XRS
024294,000176: 36,2124 24047 STOVL X1
024295,000177: 36,2125 03554 RPASS3
024296,000178: 36,2126 77657 VSR*
024297,000179: 36,2127 57176 0,2
024298,000180: 36,2130 26657 STOVL RVEC
024299,000181: 36,2131 03562 VPASS3
024300,000182: 36,2132 77657 VSR*
024301,000183: 36,2133 57176 0,2
024302,000184: 36,2134 36746 STCALL VVEC
024303,000185: 36,2135 24744 TIMETHET
024304,000186: 36,2136 77745 DLOAD # SAVE START TIME AND GET END TIME
024305,000187: 36,2137 00037 T
024306,000188: # Page 554
024307,000189: 36,2140 03752 STORE TF
024308,000190: 36,2141 16627 STODL TFO
024309,000191: 36,2142 02611 IT
024310,000192: 36,2143 73406 PUSH SIN
024311,000193: 36,2144 16732 STODL SNTH
024312,000194: 36,2145 50146 COS BMN
024313,000195: 36,2146 74150 +2
024314,000196: 36,2147 77676 DCOMP
024315,000197: 36,2150 02734 STORE CSTH
024316,000198: 36,2151 45150 LXA,1 CALL
024317,000199: 36,2152 03745 XRS
024318,000200: 36,2153 24744 TIMETHET
024319,000201: # INITIALIZE LOOP
024320,000202: 36,2154 43145 DLOAD CLEAR
024321,000203: 36,2155 00037 T
024322,000204: 36,2156 03661 ITSWICH
024323,000205: 36,2157 16621 STODL TFI # SAVE TIME FOR LOOP TEST
024324,000206: 36,2160 15343 DPPOSMAX
024325,000207: 36,2161 16623 STODL DELVEE
024326,000208: 36,2162 33142 MANYFEET
024327,000209: 36,2163 16625 STODL HP
024328,000210: 36,2164 33136 SEC1THET # 70 DEGREES
024329,000211: 36,2165 71214 BON DLOAD
024330,000212: 36,2166 00316 KFLAG
024331,000213: 36,2167 74171 +2
024332,000214: 36,2170 33140 SEC2THET # 330 DEGREES
024333,000215: 36,2171 37750 STCALL THETL
024334,000216: 36,2172 74214 CONCAUL
024335,000217: 36,2173 70545 BIS DLOAD SR1
024336,000218: 36,2174 02734 CSTH
024337,000219: 36,2175 14021 STODL COSTH
024338,000220: 36,2176 02732 SNTH
024339,000221: 36,2177 77742 SR1
024340,000222: 36,2200 34023 STCALL SINTH # GET 4 QUADRANT THETA
024341,000223: 36,2201 47256 ARCTRIG
024342,000224: 36,2202 43244 BPL DAD
024343,000225: 36,2203 74205 +2
024344,000226: 36,2204 15343 DPPOSMAX # PUT THETA BETWEEN 0,1
024345,000227: 36,2205 65221 BDSU PDDL
024346,000228: 36,2206 03750 THETL
024347,000229: 36,2207 03752 TF
024348,000230: 36,2210 75225 DSU SIGN # FAST TIMES
024349,000231: 36,2211 02621 TFI
024350,000232: 36,2212 77640 BMN
024351,000233: 36,2213 74416 RNGETEST # TIME MUST HAVE A STOP
024352,000234: # ADVANCE PASSIVE FOR TARGET VECTOR
024353,000235: 36,2214 77745 CONCAUL DLOAD
024354,000236: 36,2215 03663 TTPI
024355,000237: 36,2216 43015 DAD BON
024356,000238: 36,2217 03752 TF
024357,000239: # Page 555
024358,000240: 36,2220 01312 AVFLAG
024359,000241: 36,2221 74226 ADVCSM
024360,000242: 36,2222 34041 STCALL TDEC1
024361,000243: 36,2223 27126 LEMCONIC
024362,000244: 36,2224 77650 GOTO
024363,000245: 36,2225 74230 JUNCT3
024364,000246: 36,2226 34041 ADVCSM STCALL TDEC1
024365,000247: 36,2227 27114 CSMCONIC
024366,000248: # SAVE BACK VALUES OF HP AND DELVEE
024367,000249: 36,2230 77775 JUNCT3 VLOAD
024368,000250: 36,2231 00007 VATT
024369,000251: 36,2232 27640 STOVL VPASS4
024370,000252: 36,2233 00001 RATT
024371,000253: 36,2234 03632 STORE RPASS4
024372,000254: 36,2235 17415 STODL RTARG
024373,000255: 36,2236 03752 TF
024374,000256: 36,2237 17423 STODL DELLT4
024375,000257: 36,2240 02625 HP
024376,000258: 36,2241 16631 STODL HPO
024377,000259: 36,2242 02623 DELVEE
024378,000260: 36,2243 16633 STODL DELVEO
024379,000261: # PREPARE FOR LAMBERT
024380,000262: 36,2244 03663 TTPI
024381,000263: 36,2245 17503 STODL INTIME
024382,000264: 36,2246 03746 XRS
024383,000265: 36,2247 17746 STODL RTX1
024384,000266: 36,2250 15335 HI6ZEROS
024385,000267: 36,2251 65201 SETPD PDDL
024386,000268: 36,2252 00001 0D
024387,000269: 36,2253 33122 EPSFOUR
024388,000270: 36,2254 77715 PDVL
024389,000271: 36,2255 03540 RACT3
024390,000272: 36,2256 27570 STOVL RINIT
024391,000273: 36,2257 03546 VACT3
024392,000274: 36,2260 37576 STCALL VINIT
024393,000275: 36,2261 22000 INITVEL
024394,000276: # COMPUTE H ET CETERA
024395,000277: 36,2262 52375 VLOAD VSU
024396,000278: 36,2263 03620 VTPRIME
024397,000279: 36,2264 03640 VPASS4
024398,000280: 36,2265 41446 ABVAL PUSH
024399,000281: 36,2266 26637 STOVL RELDELV # /V2-VP(TPI+TF)/
024400,000282: 36,2267 03646 DELVEET3 # V1-VA
024401,000283: 36,2270 77646 ABVAL # /V1-VA/
024402,000284: 36,2271 02635 STORE MAGVTPI
024403,000285: 36,2272 45415 DAD STADR
024404,000286: 36,2273 61154 STODL DELVEE
024405,000287: 36,2274 03746 XRS
024406,000288: 36,2275 24047 STOVL X1
024407,000289: 36,2276 03612 VIPRIME
024408,000290: # Page 556
024409,000291: 36,2277 77657 VSR*
024410,000292: 36,2300 57176 0,2
024411,000293: 36,2301 26746 STOVL VVEC
024412,000294: 36,2302 03540 RACT3
024413,000295: 36,2303 77657 VSR*
024414,000296: 36,2304 57176 0,2
024415,000297: 36,2305 36657 STCALL RVEC
024416,000298: 36,2306 45163 PERIAPO
024417,000299: 36,2307 71354 LXA,2 DLOAD
024418,000300: 36,2310 03746 XRS +1
024419,000301: 36,2311 77657 SL*
024420,000302: 36,2312 57576 0,2
024421,000303: 36,2313 02625 STORE HP
024422,000304: # ITSWICH DENOTES INTERPOLATION -- SOLUTION ACCEPTANCE IS FORCED
024423,000305: 36,2314 71214 BON DLOAD
024424,000306: 36,2315 03701 ITSWICH
024425,000307: 36,2316 74427 ENDEN
024426,000308: 36,2317 02321 HPERMIN
024427,000309: 36,2320 50025 DSU BMN
024428,000310: 36,2321 02625 HP
024429,000311: 36,2322 74365 HALFSAFE
024430,000312: 36,2323 45325 PDDL DSU # WAS PERICENTER ALT SAFE
024431,000313: 36,2324 02321 HPERMIN
024432,000314: 36,2325 02631 HPO
024433,000315: 36,2326 45240 BMN DSU # (HPLIM-HPO)-(HPLIM-HP)=HP-HPO
024434,000316: 36,2327 74344 INTERP # SOLUTION AT HAND
024435,000317: 36,2330 71240 BMN DLOAD
024436,000318: 36,2331 73254 ALARUMS # IT'S GETTING WORSE -- SOUND THE ALARM
024437,000319: 36,2332 33130 CDSEC
024438,000320: 36,2333 57414 JUNCT1 BOFF DCOMP # OFF IS PLUS, ON IS MINUS
024439,000321: 36,2334 00356 KFLAG
024440,000322: 36,2335 74336 +1
024441,000323: 36,2336 03744 STORE DELTEE
024442,000324: 36,2337 43345 JUNCT2 DLOAD DAD
024443,000325: 36,2340 03744 DELTEE
024444,000326: 36,2341 03752 TF
024445,000327: 36,2342 37752 STCALL TF
024446,000328: 36,2343 74173 BIS # RECYCLE
024447,000329: 36,2344 45214 INTERP SET DSU # HP-HPO
024448,000330: 36,2345 03461 ITSWICH
024449,000331: 36,2346 65301 NORM PDDL
024450,000332: 36,2347 00047 X1
024451,000333: 36,2350 33146 DFTMOON
024452,000334: 36,2351 45215 DAD DSU
024453,000335: 36,2352 02321 HPERMIN
024454,000336: 36,2353 02625 HP
024455,000337: 36,2354 70501 NORM SR1
024456,000338: 36,2355 00050 X2
024457,000339: 36,2356 56264 XSU,2 DDV
024458,000340: 36,2357 00046 X1
024459,000341: # Page 557
024460,000342: 36,2360 53605 DMP SR*
024461,000343: 36,2361 03744 DELTEE
024462,000344: 36,2362 57177 0 -1,2
024463,000345: 36,2363 37744 STCALL DELTEE
024464,000346: 36,2364 74337 JUNCT2
024465,000347: 36,2365 45325 HALFSAFE PDDL DSU # SAVE HP-HPLIM FOR POSSIBLE
024466,000348: 36,2366 02623 DELVEE
024467,000349: 36,2367 02633 DELVEO # SAVE THIS TOO
024468,000350: 36,2370 51406 PUSH ABS
024469,000351: 36,2371 50025 DSU BMN
024470,000352: 36,2372 33144 LIMVEL # 2 FT PS
024471,000353: 36,2373 74427 ENDEN
024472,000354: 36,2374 45345 DLOAD DSU
024473,000355: 36,2375 02321 HPERMIN
024474,000356: 36,2376 02631 HPO
024475,000357: 36,2377 77725 PDDL
024476,000358: 36,2400 71240 BMN DLOAD
024477,000359: 36,2401 74410 LRGRDVO
024478,000360: 36,2402 71244 BPL DLOAD
024479,000361: 36,2403 74344 INTERP
024480,000362: 36,2404 03744 DELTEE
024481,000363: 36,2405 57542 SR1 DCOMP
024482,000364: 36,2406 37744 STCALL DELTEE
024483,000365: 36,2407 74337 JUNCT2
024484,000366: 36,2410 77745 LRGRDVO DLOAD
024485,000367: 36,2411 71240 BMN DLOAD
024486,000368: 36,2412 74337 JUNCT2
024487,000369: 36,2413 33132 CLSEC
024488,000370: 36,2414 77650 GOTO
024489,000371: 36,2415 74333 JUNCT1
024490,000372: # TIME RAN OUT ASSUME SOLUTION IF SAVE PERICENTER
024491,000373: 36,2416 45345 RNGETEST DLOAD DSU
024492,000374: 36,2417 02625 HP
024493,000375: 36,2420 02321 HPERMIN
024494,000376: 36,2421 71240 BMN DLOAD
024495,000377: 36,2422 73254 ALARUMS
024496,000378: 36,2423 03752 TF
024497,000379: 36,2424 77625 DSU
024498,000380: 36,2425 03744 DELTEE
024499,000381: 36,2426 03752 STORE TF # TIME OF SOLUTION
024500,000382: 36,2427 77775 ENDEN VLOAD
024501,000383: 36,2430 03620 VTPRIME
024502,000384: 36,2431 65241 DOT PDDL # SG2 WITH MAGNITUDE
024503,000385: 36,2432 03632 RPASS4
024504,000386: 36,2433 02637 RELDELV
024505,000387: 36,2434 45565 SIGN STADR # NOW SIGN(RELDELV)=SIGN(SG2)
024506,000388: 36,2435 41140 STCALL RELDELV
024507,000389: 36,2436 16441 TRANSANG # COMPUTE OMEGA T, CENTRAL ANGLE
024508,000390: 36,2437 50375 VLOAD DOT
024509,000391: 36,2440 03540 RACT3
024510,000392: # Page 558
024511,000393: 36,2441 03612 VIPRIME # SG1
024512,000394: 36,2442 51165 SIGN BPL # IF POSITIVE THEN SG1 = SG2 OTHERWISE
024513,000395: 36,2443 02637 RELDELV
024514,000396: 36,2444 74454 USEKAY # SIGN(SG2-SG1)=SIGN(SG2)=SIGN(RELDELV)
024515,000397: 36,2445 57535 SLOAD DCOMP
024516,000398: 36,2446 33117 DECTWO
024517,000399: 36,2447 51165 SIGN BPL
024518,000400: 36,2450 02637 RELDELV
024519,000401: 36,2451 74462 NEXUS
024520,000402: 36,2452 52076 DCOMP GOTO
024521,000403: 36,2453 74460 USEKAY +4
024522,000404: 36,2454 43135 USEKAY SLOAD BON
024523,000405: 36,2455 33117 DECTWO
024524,000406: 36,2456 00316 KFLAG
024525,000407: 36,2457 74462 NEXUS
024526,000408: 36,2460 77625 DSU
024527,000409: 36,2461 36150 P21ONENN
024528,000410: 36,2462 17766 NEXUS STODL NN1
024529,000411: 36,2463 02625 HP
024530,000412: 36,2464 36641 STCALL POSTTPI
024531,000413: 36,2465 03657 QTEMP
024532,000414: 07,2441 BANK 07
024533,000415: 07,2000 SETLOC XANG
024534,000416: 07,2000 BANK
024535,000417: 07,2441 COUNT 07/XANG
024536,000418:
024537,000419: # CENTRAL ANGLE SUBROUTINE
024538,000420:
024539,000421: # THIS SUBROUTINE COMPUTES THE CENTRAL ANGLE OF TRAVEL OF THE
024540,000422: # PASSIVE VEHICLE DURING THE TRANSFER.
024541,000423:
024542,000424: 07,2441 40220 TRANSANG STQ SETPD
024543,000425: 07,2442 02370 SUBEXIT
024544,000426: 07,2443 00001 0
024545,000427: 07,2444 73150 LXA,1 LXA,2
024546,000428: 07,2445 03745 XRS
024547,000429: 07,2446 03746 XRS +1
024548,000430: 07,2447 53775 VLOAD VSR*
024549,000431: 07,2450 03640 VPASS4
024550,000432: 07,2451 57176 0,2
024551,000433: 07,2452 22746 STODL* VVEC
024552,000434: 07,2453 11742 MUTABLE +2,1
024553,000435: 07,2454 53715 PDVL VSR* # SQRT MU (+18 OR +15) 00D
024554,000436: 07,2455 03632 RPASS4
024555,000437: 07,2456 57176 0,2
024556,000438: 07,2457 64646 ABVAL PDDL* # MAGNITUDE OF R (+29 OR +27) 02D
024557,000439: 07,2460 11740 MUTABLE,1
024558,000440: 07,2461 47515 PDVL VSQ # 1/MU (+34 OR +28) 04D
024559,000441: 07,2462 02746 VVEC
024560,000442: 07,2463 57301 NORM DMPR # PUSH LIST AT 02D
024561,000443: 07,2464 00047 X1
024562,000444: # Page 559
024563,000445: 07,2465 53605 DMP SRR*
024564,000446: 07,2466 00003 02D
024565,000447: 07,2467 21576 0 -3,1
024566,000448: 07,2470 77621 BDSU # R V**/MU (+6)
024567,000449: 07,2471 11616 D1/32
024568,000450: 07,2472 65301 NORM PDDL
024569,000451: 07,2473 00047 X1 # (2 - R V**/MU) (+6-N)
024570,000452: 07,2474 56362 SR1R DDV # MAGNITUDE OF R (+30 OR +28)
024571,000453: 07,2475 41457 SL* PUSH # R/(2 - R V**/MU) (+29 OR +27) 02D
024572,000454: 07,2476 20174 0 -5,1
024573,000455: 07,2477 75542 SR1 SQRT
024574,000456: 07,2500 77605 DMP
024575,000457: 07,2501 65301 NORM PDDL # ASUBP*** 00D
024576,000458: 07,2502 00047 X1
024577,000459: 07,2503 56342 SR1 DDV
024578,000460: 07,2504 53605 DMP SL*
024579,000461: 07,2505 03752 TF
024580,000462: 07,2506 20201 0,1
024581,000463: 07,2507 60325 PDDL NORM
024582,000464: 07,2510 11630 2PISC
024583,000465: 07,2511 00047 X1
024584,000466: 07,2512 56325 PDDL DDV
024585,000467: 07,2513 77657 SL*
024586,000468: 07,2514 20176 0 -3,1 # CENTANG = (SQRT(MU/ASUP***)TF)
024587,000469: 07,2515 37754 STCALL CENTANG # IN REVOLUTIONS B-0
024588,000470: 07,2516 02370 SUBEXIT
024589,000471: 35,3151 BANK 35
024590,000472: 35,2000 SETLOC P17S1
024591,000473: 35,2000 BANK
024592,000474: 35,3151 COUNT 35/P17
024593,000475:
024594,000476: # TPI SEARCH DISPLAY ROUTNE
024595,000477:
024596,000478: 35,3151 04627 P17 TC AVFLAGA # AVFLAG = CSM, SET TRACK + UPDATE FLAGS
024597,000479: 35,3152 03154 TC P17.1
024598,000480: 35,3153 04642 P77 TC AVFLAGP # AVFLAG = LEM, SET TRACK + UPDATE FLAGS
024599,000481: 35,3154 04647 P17.1 TC P20FLGON # SET UPDATE FLAG
024600,000482: 35,3155 34614 CAF V06N37 # DISPLAY TTPI TIME
024601,000483: 35,3156 04575 TC VNP00H
024602,000484: 35,3157 06006 TC INTPRET
024603,000485: 35,3160 45014 CLEAR CALL
024604,000486: 35,3161 00670 UPDATFLG
024605,000487: 35,3162 74012 S17.1 # UPDATE STATE VECTORS TO TTPI
024606,000488: 35,3163 76014 SET AXT,1
024607,000489: 35,3164 00470 UPDATFLG
024608,000490: 35,3165 00002 DEC 2 B-14 # DELTA H = 2 K POSITIVE, KFLAG OFF
024609,000491: 35,3166 76014 BOFF AXT,1
024610,000492: 35,3167 00356 KFLAG
024611,000493: 35,3170 73172 +2
024612,000494: 35,3171 00001 DEC 1 B-14 # DELTA H = 1 K NEGATIVE, KFLAG ON
024613,000495: # Page 560
024614,000496: 35,3172 77530 SXA,1 EXIT
024615,000497: 35,3173 01132 OPTION2
024616,000498: 35,3174 33263 CAF V06N72 # DISPLAY PHI, DELTA H, SEARCH OPTION K
024617,000499: 35,3175 03237 TC VNCOMP17
024618,000500: 35,3176 06006 TC INTPRET
024619,000501: 35,3177 43014 CLEAR SET
024620,000502: 35,3200 00670 UPDATFLG
024621,000503: 35,3201 00076 KFLAG
024622,000504: 35,3202 45335 SLOAD DSU
024623,000505: 35,3203 01133 OPTION2 # RESET KFLAG ON FOR OPTION =1
024624,000506: 35,3204 36150 P21ONENN # OFF FOR OPTION =2
024625,000507: 35,3205 43030 BHIZ CLEAR
024626,000508: 35,3206 73210 +2
024627,000509: 35,3207 00276 KFLAG
024628,000510: 35,3210 46135 SLOAD BHIZ
024629,000511: 35,3211 03747 XRS +1
024630,000512: 35,3212 73216 +4
024631,000513: 35,3213 52145 DLOAD GOTO
024632,000514: 35,3214 33126 HPL
024633,000515: 35,3215 73220 P17.2
024634,000516: 35,3216 77745 DLOAD
024635,000517: 35,3217 33124 HPE
024636,000518: 35,3220 36321 P17.2 STCALL HPERMIN
024637,000519: 35,3221 74070 S17.2
024638,000520: 35,3222 77414 SET EXIT
024639,000521: 35,3223 00470 UPDATFLG
024640,000522: 35,3224 34616 P17.3 CAF V06N58 # DISPLAY DELTA VTPI, DELTA VTPF, AND H
024641,000523: 35,3225 03237 TC VNCOMP17
024642,000524: 35,3226 34615 CAF V06N55 # DISPLAY PERICENTER CODE AND CENTRAL ANG,
024643,000525: 35,3227 04662 TC BANKCALL
024644,000526: 35,3230 21057 CADR GOFLASHR
024645,000527: 35,3231 04106 TC GOTOP00H # TERMINATE PROGRAM
024646,000528: 35,3232 04106 TC GOTOP00H # END PROGRAM
024647,000529: 35,3233 03154 TC P17.1 # RECYCLE WITH NEW TTPI OR SEARCH OPTION
024648,000530: 35,3234 35016 CAF TWO # BLANK R2
024649,000531: 35,3235 05526 TC BLANKET
024650,000532: 35,3236 15217 TCF ENDOFJOB
024651,000533: 35,3237 E4,1767 EBANK= RTRN
024652,000534:
024653,000535: 35,3237 00006 VNCOMP17 EXTEND
024654,000536: 35,3240 23766 QXCH QSAVED
024655,000537: 35,3241 55765 TS VERBNOUN
024656,000538: 35,3242 31765 CA VERBNOUN
024657,000539: 35,3243 04662 TCR BANKCALL
024658,000540: 35,3244 20720 CADR GOFLASH
024659,000541: 35,3245 03242 TC -3 # TERMINATE ILLEGAL REDISPLAY
024660,000542: 35,3246 01766 TC QSAVED # PROCEED
024661,000543: 35,3247 40154 CS MPAC # RECYCLE WITH NEW TPI TIME
024662,000544: 35,3250 65012 AD BIT6 # OR PROCEED WITH NEW SEARCH OPTION
024663,000545: 35,3251 00006 EXTEND
024664,000546: # Page 561
024665,000547: 35,3252 13154 BZF P17.1
024666,000548: 35,3253 03242 TC VNCOMP17 +3
024667,000549: 35,3254 77414 ALARUMS SET EXIT
024668,000550: 35,3255 00470 UPDATFLG
024669,000551: 35,3256 05650 TC ALARM
024670,000552: 35,3257 00124 OCT 00124 # NO SAFE PERICENTER IN THIS SECTOR
024671,000553: 35,3260 35050 CAF V05N09
024672,000554: 35,3261 03237 TC VNCOMP17
024673,000555: 35,3262 04106 TC GOTOP00H # PROCEED ILLEGAL TERMINATE PROGRAM
024674,000556: 35,3263 01510 V06N72 VN 0672
024675,000557:
End of include-file TPI_SEARCH.agc. Parent file is MAIN.agc