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