Source Code
|
These source-code files are part of a reconstructed copy of Artemis 071, the
first release of the Apollo 15 through 17 Command Module (CM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with source code of Artemis 072 previously transcribed from a digitized copy of that program. The code was then updated by undoing changes between the two versions. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021154-. Note that page numbers in the reconstructed code match those on the Artemis 072 printout, although the changed code would likely have changed page numbers for a real Artemis 071 listing. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
037459,000002: ## Copyright: Public domain.
037460,000003: ## Filename: REENTRY_CONTROL.agc
037461,000004: ## Purpose: A section of Artemis revision 071.
037462,000005: ## It is part of the reconstructed source code for the first
037463,000006: ## release of the flight software for the Command Module's
037464,000007: ## (CM) Apollo Guidance Computer (AGC) for Apollo 15 through
037465,000008: ## 17. The code has been recreated from a copy of Artemis 072.
037466,000009: ## It has been adapted such that the resulting bugger words
037467,000010: ## exactly match those specified for Artemis 071 in NASA
037468,000011: ## drawing 2021154-, which gives relatively high confidence
037469,000012: ## that the reconstruction is correct.
037470,000013: ## Reference: 852
037471,000014: ## Assembler: yaYUL
037472,000015: ## Contact: Ron Burkey <info@sandroid.org>.
037473,000016: ## Website: www.ibiblio.org/apollo/index.html
037474,000017: ## Mod history: 2019-08-14 MAS Created from Artemis 072.
037475,000018:
|
Page 852 |
037477,000020:
037478,000021: # ENTRY INITIALIZATION ROUTINE
037479,000022: # -----------------------------
037480,000023:
037481,000024: 25,2000 SETLOC REENTRY
037482,000025: 25,2000 BANK
037483,000026:
037484,000027: 25,2000 COUNT* $$/ENTRY
037485,000028: 25,2000 E7,1451 EBANK= RTINIT
037486,000029:
037487,000030: 25,2000 0102 CM/FLAGS EQUALS STATE +6
037488,000031:
037489,000032: 25,2000 77776 STARTENT EXIT # MM = 63
037490,000033: # COME HERE FROM CM/POSE. RESTARTED IN CM/POSE.
037491,000034:
037492,000035: 25,2001 42113 CS ENTMASK # INITIALIZE ALL SWITCHES TO ZERO
037493,000036: # EXCEPT LATSW, ENTRYDSP AND GONEPAST.
037494,000037: # GONEBY 112D BIT8 FLAG7, SELF INITIALIZING
037495,000038: 25,2002 00004 INHINT
037496,000039: 25,2003 70102 MASK CM/FLAGS
037497,000040: # ENTRYDSP = 92D B13
037498,000041: # GONEPAST=95D B10, RELVELSW=96D B9
037499,000042: # EGSW = 97D B8 NOSWITCH = 98D B7
037500,000043: # HIND=99D B6 INRLSW=100D B5
037501,000044: # LATSW=101D B4 .05GSW=102D B3
037502,000045:
037503,000046: 25,2004 62114 AD ENTRYSW # SET ENTRYDSP, LATSW, GONEPAST.
037504,000047: 25,2005 54102 TS CM/FLAGS
037505,000048:
037506,000049: 25,2006 00003 RELINT
037507,000050:
037508,000051: 25,2007 06006 TC INTPRET
037509,000052:
037510,000053: 25,2010 77735 SLOAD
037511,000054: 25,2011 03011 LODPAD
037512,000055: 25,2012 03626 STORE LOD
037513,000056:
037514,000057: 25,2013 77735 SLOAD
037515,000058: 25,2014 03010 LADPAD
037516,000059: 25,2015 03624 STORE LAD
037517,000060:
037518,000061: 25,2016 77605 DMP # L/DCMINR = LAD COS(15)
037519,000062: 25,2017 15324 COS15
037520,000063: 25,2020 17630 STODL L/DCMINR
037521,000064: 25,2021 15151 LATSLOPE
037522,000065: 25,2022 70405 DMP SR1 # KLAT = LAD/24
037523,000066: 25,2023 03624 LAD
037524,000067: 25,2024 17632 STODL KLAT
037525,000068: 25,2025 15200 Q7F
037526,000069: 25,2026 17175 STODL Q7 # Q7 = Q7F
037527,000070: 25,2027 15344 NEARONE # 1.0 -1BIT
|
Page 853 |
037529,000072: 25,2030 17614 STODL FACTOR
037530,000073: 25,2031 03624 LAD
037531,000074: 25,2032 57565 SIGN DCOMP
037532,000075: 25,2033 03327 HEADSUP # MAY BE NOISE FOR DISPLAY P61
037533,000076: 25,2034 37634 STCALL L/D # L/D = - LAD SGN(HEADSUP)
037534,000077:
037535,000078: 25,2035 52063 STARTEN1 # RETURN VIA GOTOADDR
037536,000079: 25,2036 47375 VLOAD VXV
037537,000080: 25,2037 01036 VN # (-7) M/CS
037538,000081: 25,2040 01756 UNITR # .5 UNIT REF COORDS
037539,000082: 25,2041 50256 UNIT DOT
037540,000083: 25,2042 03474 RT # RT/2 TARGET VECTOR REF COORDS
037541,000084: 25,2043 03676 STORE LATANG # LATANG = UNI.RT /4
037542,000085: 25,2044 47076 DCOMP RTB
037543,000086: 25,2045 45761 SIGNMPAC
037544,000087: 25,2046 17644 STODL K2ROLL # K2ROLL = -SGN(LATANG)
037545,000088:
037546,000089: 25,2047 03624 LAD
037547,000090: 25,2050 43205 DMP DAD
037548,000091: 25,2051 15202 Q21
037549,000092: 25,2052 15204 Q22
037550,000093: 25,2053 03712 STORE Q2 # Q2 = -1992 + 3500 LAD
037551,000094:
037552,000095: 25,2054 66331 SSP SSP
037553,000096: 25,2055 03646 GOTOADDR # SET SELECTOR FOR INITIAL PASS
037554,000097: 25,2056 52260 INITROLL
037555,000098: 25,2057 03325 POSEXIT
037556,000099: 25,2060 52115 SCALEPOP # SET CM/POSE TO CONTINUE AT SCALEPOP
037557,000100:
037558,000101: 25,2061 77634 RTB
037559,000102: 25,2062 53607 SERVNOUT # OMIT INITIAL DISPLAY, SINCE 1ST GUESSBAD
037560,000103:
037561,000104: # CALCULATE THE INITIAL TARGET VECTOR: RTINIT, ALSO RTEAST, RTNORM AND RT. ALL ARE .5 UNIT AND IN
037562,000105: # REFERENCE COORDINATES.
037563,000106:
037564,000107: 25,2063 77220 STARTEN1 STQ VLOAD
037565,000108: 25,2064 03645 GOTOADDR
037566,000109: 25,2065 03401 LAT(SPL) # TARGET COORDINATES
037567,000110: 25,2066 43014 CLEAR CLEAR # DO CALL USING PAD RADIUS. WILL UNIT IT.
037568,000111: 25,2067 00662 ERADFLAG # ANYWAY.
037569,000112: 25,2070 01663 LUNAFLAG
037570,000113: 25,2071 14747 STODL LAT
037571,000114: 25,2072 15336 3ZEROS
037572,000115:
037573,000116: 25,2073 14753 STODL LAT +4 # SET ALT=0.
037574,000117: 25,2074 01044 PIPTIME # ESTABLISH RTINIT AT TIME OF PRESENT
037575,000118: # RN AND VN.
037576,000119: 25,2075 37524 STCALL TIME/RTO # SAVE TIME BASE OF RTINIT.
037577,000120: 25,2076 26524 LALOTORV # C(MPAC) =TIME (PIPTIME)
037578,000121: 25,2077 77656 UNIT # ANSWER IN ALPHAV ALSO
|
Page 854 |
037580,000123: 25,2100 17452 STODL RTINIT # .5 UNIT TARGET REF COORDS
037581,000124: 25,2101 12112 500SEC # NOMINAL ENTRY TIME FOR P63
037582,000125: # TIME/RTO = PIPTIME, STILL.
037583,000126: 25,2102 37606 STCALL DTEAROT # INITIALIZE EARROT
037584,000127: 25,2103 46213 EARROT1 # GET RT
037585,000128: 25,2104 72441 DOT SL1
037586,000129: 25,2105 01756 UNITR # RT/2 IN MPAC
037587,000130: 25,2106 77726 ACOS
037588,000131: 25,2107 37702 STCALL THETAH # RANGE ANGLE /360
037589,000132: 25,2110 03645 GOTOADDR # RETURN TO CALLER
037590,000133:
037591,000134: 25,2111 00003 01520 500SEC 2DEC 50000 B-28 # CS
037592,000135:
037593,000136: 25,2113 11774 ENTMASK OCT 11774
037594,000137: 25,2114 11010 ENTRYSW OCT 11010 # ENTRYDSP B13, GONEPAST B10, LATSW B4
|
Page 855 |
037596,000139:
037597,000140: 25,2115 77624 SCALEPOP CALL
037598,000141: 25,2116 52125 TARGETNG
037599,000142:
037600,000143: 25,2117 77776 EXIT
037601,000144:
037602,000145: 25,2120 05402 REFAZE10 TC PHASCHNG
037603,000146: 25,2121 10035 OCT 10035 # SERVICER 5.3 RESTART AT REFAZE10
037604,000147:
037605,000148: 25,2122 01,2250 5P3SPT14 = 5.3SPOT
037606,000149: 25,2122 06006 TC INTPRET
037607,000150:
037608,000151: # JUMP TO PARTICULAR RE-ENTRY PHASE:
037609,000152:
037610,000153: # SEQUENCE
037611,000154: 25,2123 77650 GOTO
037612,000155: 25,2124 03645 GOTOADDR
037613,000156:
037614,000157: # GOTOADDR CONTAINS THE ADDRESS OF THE ROLL COMMAND EQUATIONS APPROPRIATE TO THE CURRENT PHASE OF
037615,000158: # RE-ENTRY. SEQUENCING IS AS FOLLOWS:
037616,000159:
037617,000160: # INITROLL ADDRESS IS SET HERE INITIALLY. HOLDS INITIAL ROLL ATTITUDE UNTIL KAT IS EXCEEDED. THEN HOLDS NEW ROLL
037618,000161: # ATTITUDE UNTIL VRTHRESH IS EXCEEDED. THEN BRANCHES TO
037619,000162:
037620,000163: # HUNTEST THIS SECTION CHECKS TO SEE IF THE PREDICTED RANGE AT NOMINAL L/D FROM PRESENT CONDITIONS IS LESS
037621,000164: # THAN THE DESIRED RANGE.
037622,000165: # IF NOT - A ROLL COMMAND IS GENERATED BY THE CONSTANT DRAG CONTROLLER.
037623,000166: # IF SO - CONTROL AND GOTOADDR ARE SET TO UPCONTRL.
037624,000167: # USUALLY NO ITERATION IS INVOLVED EXCEPT IF THE RANGE DESIRED IS TOO LONG ON THE FIRST PASS THROUGH
037625,000168: # HUNTEST.
037626,000169:
037627,000170: # UPCONTRL CONTROLS ROLL DURING THE SUPER-CIRCULAR PHASE. UPCONTRL IS TERMINATED EITHER
037628,000171: # (A) WHEN THE DRAG (AS MEASURED BY THE PIPAS) FALLS BELOW Q7, OR
037629,000172: # (B) IF RDOT IS NEGATIVE AND REFERENCE VL EXCEEDS V.
037630,000173: # IN CASE (A), GOTOADDR IS SET TO KEP2 AND IN CASE (B), TO PREDICT3 SKIPPING THE KEPLER PHASE OF
037631,000174: # ENTRY.
037632,000175:
037633,000176: # KEP2 GOTOADDR IS SET HERE DURING THE KEPLER PHASE TO MONITOR DRAG. THE SPACECRAFT IS INSTANTANEOUSLY
037634,000177: # TRIMMED IN PITCH AND YAW TO THE COMPUTED RELATIVE VELOCITY. THE LAST COMPUTED ROLL ANGLE IS MAINTAINED.
037635,000178: # WHEN THE MEASURED DRAG EXCEEDS Q7 +0.5, GOTOADDR IS SET TO
037636,000179:
037637,000180: # PREDICT3 THIS CONTROLS THE FINAL SUB-ORBITAL PHASE. ROLL COMMANDS CEASE
037638,000181: # WHEN V IS LESS THAN VQUIT. AN EXIT IS MADE TO
037639,000182:
037640,000183: # P67.1 THE LAST COMPUTED ROLL ANGLE IS MAINTAINED. RATE DAMPING IS DONE IN PITCH AND YAW. PRESENT LATITUDE
037641,000184: # AND LONGITUDE ARE COMPUTED FOR DISPLAY.
037642,000185: # ENTRY IS TERMINATED WHEN DISKY RESPONSE IS MADE TO TO THIS FINAL FLASHING DISPLAY.
037643,000186:
|
Page 856 |
037645,000188: # PROCESS AVERAGE G OUTPUT...SCALE IT AND GET INPUT DATA
037646,000189:
037647,000190:
037648,000191: # * START TARGETING ...
037649,000192:
037650,000193: 25,2125 E7,1451 EBANK= RTINIT
037651,000194:
037652,000195: # TARGETNG IS CALLED BY P61, FROM GROUP 4.
037653,000196: # TARGETNG IS CALLED BY ENTRY, FROM GROUP 5.
037654,000197:
037655,000198: # ALL MM COME HERE.
037656,000199: 25,2125 77214 TARGETNG BOFF VLOAD # ENTER WITH PROPER EB FROM CM/POSE(TEST)
037657,000200: 25,2126 03346 RELVELSW # RELVELSW = 96D BIT9
037658,000201: 25,2127 52133 GETVEL # WANT INERTIAL VEL. GO GET IT.
037659,000202: 25,2130 03526 -VREL # NEW V IS RELATIVE, CONTINUE
037660,000203:
037661,000204: 25,2131 52076 VCOMP GOTO # (VREL) = (V) + KWE UNITR*UNITW
037662,000205: 25,2132 52136 GETUNITV -1 # - VREL WAS LEFT BY CM/POSE
037663,000206:
037664,000207: 25,2133 74375 GETVEL VLOAD VXSC # INERTIAL V WANTED
037665,000208: 25,2134 01036 VN # KVSCALE = (12800 / .3048) / 2VS
037666,000209: 25,2135 15232 KVSCALE # KVSCALE = .81491944
037667,000210: 25,2136 03516 -1 STORE VEL # V/2 VS
037668,000211: 25,2137 44056 GETUNITV UNIT STQ
037669,000212: 25,2140 03373 60GENRET
037670,000213: 25,2141 17510 STODL UNITV
037671,000214: 25,2142 00043 34D
037672,000215: 25,2143 03622 STORE VSQUARE # VSQ/4
037673,000216:
037674,000217: 25,2144 77625 DSU # LEQ = VSQUARE - 1
037675,000218: 25,2145 15326 FOURTH # 4 G-S FULL SCALE
037676,000219: 25,2146 17654 STODL LEQ # LEQ/4
037677,000220:
037678,000221: 25,2147 00045 36D
037679,000222: 25,2150 27674 STOVL V # V/2 VS = VEL/2 VS
037680,000223:
037681,000224: 25,2151 03516 VEL
037682,000225: 25,2152 72441 DOT SL1 # RDOT= V.UNITR
037683,000226: 25,2153 01756 UNITR
037684,000227: 25,2154 27700 STOVL RDOT # RDOT / 2 VS
037685,000228:
037686,000229: 25,2155 01315 DELV # PIPA COUNTS IN PLATFORM COORDS.
037687,000230: 25,2156 41246 ABVAL DMP
037688,000231: 25,2157 15234 KASCALE
037689,000232: 25,2160 53152 SL1 BZE
037690,000233: 25,2161 55136 SETMIND
037691,000234: 25,2162 27640 DSTORE STOVL D # ACCELERATION USED TO APPROX DRAG
037692,000235: 25,2163 03516 VEL
037693,000236: 25,2164 53435 VXV UNIT # UNI = UNIT(V*R)
037694,000237: 25,2165 01756 UNITR
|
Page 857 |
037696,000239: 25,2166 03502 STORE UNI # .5 UNI REF COORDS.
037697,000240:
037698,000241: 25,2167 71214 BOFF DLOAD
037699,000242: 25,2170 03346 RELVELSW
037700,000243: 25,2171 55077 GETETA
037701,000244: 25,2172 15336 3ZEROS
037702,000245: 25,2173 43225 UPDATERT DSU DAD # PIPTIME-TIME/RTO =ELAPSED TIME SINCE
037703,000246: # RTINIT WAS ESTABLISHED.
037704,000247: 25,2174 03524 TIME/RTO
037705,000248: 25,2175 01044 PIPTIME
037706,000249: 25,2176 37606 STCALL DTEAROT # GET PREDICTED TARGET VECTOR RT
037707,000250:
037708,000251: 25,2177 46223 EARROT2
037709,000252: 25,2200 40241 DOT SETPD # SINCE (RT) UNIT VECT, THIS IS 1/4 MAX
037710,000253: 25,2201 03502 UNI # LATANG = RT.UNI
037711,000254: 25,2202 00001 0
037712,000255: 25,2203 27676 STOVL LATANG # LATANG = MAC LATANG / 4
037713,000256:
037714,000257: 25,2204 03474 RT
037715,000258: 25,2205 77614 CLEAR
037716,000259: 25,2206 03667 GONEBY # SHOW HAVE NOT GONE PAST TARGET.
037717,000260: 25,2207 50235 VXV DOT # IF RT*UNITR.UNI NEG, GONEBY=1
037718,000261: 25,2210 01756 UNITR # GONEPAST IS CONDITIONAL SW SET IN
037719,000262: 25,2211 03502 UNI # FINAL PHASE.
037720,000263: 25,2212 43044 BPL SET
037721,000264: 25,2213 52215 +2
037722,000265: 25,2214 03467 GONEBY # SHOW HAVE GONE PAST TARGET.
037723,000266:
037724,000267: 25,2215 77775 VLOAD
037725,000268: 25,2216 03474 RT
037726,000269: 25,2217 45241 GETANGLE DOT DSU # THETA = ARCCOS(RT.UNITR)
037727,000270: 25,2220 01756 UNITR
037728,000271: 25,2221 15164 NEAR1/4 # TO IMPROVE ACCURACY, CALC RANGE BY
037729,000272: 25,2222 43244 BPL DAD # TINYTHET IF HIGH ORDER PART OF
037730,000273: 25,2223 55141 TINYTHET # ARCCOS ARGUMENT IS ZERO
037731,000274: 25,2224 15164 NEAR1/4
037732,000275: 25,2225 65552 SL1 ACOS
037733,000276: 25,2226 03702 THETDONE STORE THETAH # THETAH/360
037734,000277: # HI WORD, LO BIT =1.32 NM=360 60/16384
037735,000278:
037736,000279: 25,2227 57414 BON DCOMP
037737,000280: 25,2230 03707 GONEBY # =1 IF HAVE GONE PAST TARGET.
037738,000281: # (SIGN MAY BECOME ERRATIC VERY NEAR
037739,000282: # TARGET DUE TO LOSS OF PRECISION.)
037740,000283: 25,2231 52232 +1
037741,000284: 25,2232 17714 STODL RTGON67 # RANGE ERROR: NEG IF WILL FALL SHORT.
037742,000285:
037743,000286: 25,2233 03640 D
037744,000287: 25,2234 50025 DSU BMN
037745,000288: 25,2235 15242 .05G
|
Page 858 |
037747,000290: 25,2236 52255 NO.05G
037748,000291: 25,2237 77214 SET VLOAD
037749,000292: 25,2240 03074 .05GSW
037750,000293: 25,2241 03432 DELVREF
037751,000294: 25,2242 50206 PUSH DOT
037752,000295: 25,2243 03542 UXA/2
037753,000296: 25,2244 63552 SL1 DSQ
037754,000297: 25,2245 47515 PDVL VSQ # EXCHANGE WITH PDL.
037755,000298: 25,2246 56225 DSU DDV
037756,000299: 25,2247 00001 0
037757,000300: 25,2250 75400 BOV SQRT
037758,000301: 25,2251 52253 NOLDCALC # OVFL LAST CLEARED IN EARROT2 ABOVE.
037759,000302: 25,2252 03727 STORE L/DCALC
037760,000303:
037761,000304: 25,2253 77650 NOLDCALC GOTO
037762,000305: 25,2254 03373 60GENRET
037763,000306:
037764,000307: 25,2255 52014 NO.05G CLEAR GOTO # THIS WAY FOR DAP.(MAY INTERRUPT)
037765,000308: 25,2256 03274 .05GSW # .05GSW = 102D B3
037766,000309: 25,2257 52253 NOLDCALC # KEEP SINGLE EXIT FOR TARGETNG
037767,000310:
|
Page 859 |
037769,000312: # SUBROUTINES CALLED BY SCALEPOP (TARGETING):
037770,000313:
037771,000314: 26,2000 SETLOC REENTRY1
037772,000315: 26,2000 BANK
037773,000316:
037774,000317: 26,3077 COUNT* $$/ENTRY
037775,000318:
037776,000319: 26,3077 56345 GETETA DLOAD DDV # D = D +D(-RDOT/HS -2D/V) DT/2
037777,000320: # DT/2 = 2/2 =1
037778,000321: 26,3100 03700 RDOT
037779,000322: 26,3101 15320 -HSCALED
037780,000323: 26,3102 41325 PDDL DMP
037781,000324: 26,3103 03640 D
037782,000325: 26,3104 15322 -KSCALE
037783,000326: 26,3105 43271 DDV DAD
037784,000327: 26,3106 03674 V
037785,000328: # -RDOT/HS FROM PDL.
037786,000329: 26,3107 43205 DMP DAD
037787,000330: 26,3110 03640 D
037788,000331: 26,3111 03640 D
037789,000332: 26,3112 03640 STORE D
037790,000333:
037791,000334: 26,3113 71214 BON DLOAD # EGSW INDICATES FINAL PHASE.
037792,000335: 26,3114 03307 EGSW
037793,000336: 26,3115 55122 SUBETA
037794,000337: 26,3116 03702 THETAH
037795,000338: 26,3117 52005 DMP GOTO
037796,000339: 26,3120 15236 KTETA # = 1000X2PI/(2)E14 163.84
037797,000340: 26,3121 52173 UPDATERT
037798,000341:
037799,000342: 26,3122 45345 SUBETA DLOAD DSU # SWITCH FROM INERTIAL TO RELATIVE VEL.
037800,000343: 26,3123 03674 V
037801,000344: 26,3124 15326 VMIN
037802,000345: 26,3125 43044 BPL SET
037803,000346: 26,3126 55130 SUBETA2
037804,000347: 26,3127 03066 RELVELSW
037805,000348:
037806,000349: 26,3130 41345 SUBETA2 DLOAD DMP
037807,000350:
037808,000351: 26,3131 03702 THETAH
037809,000352: 26,3132 15240 KT1 # KT1 = KT
037810,000353: 26,3133 52071 DDV GOTO
037811,000354: 26,3134 03674 V # KT = RE(2 PI)/2 VS 16384 163.84/ 2 VSAT
037812,000355: 26,3135 52173 UPDATERT
037813,000356:
037814,000357: 26,3136 52145 SETMIND DLOAD GOTO
037815,000358: 26,3137 16425 1BITDP
037816,000359: 26,3140 52162 DSTORE
037817,000360:
037818,000361: 26,3141 51425 TINYTHET DSU ABS # ENTER WITH X-.249
|
Page 860 |
037820,000363: 26,3142 16426 1BITDP +1 # GET 1/4 - MPAC
037821,000364: 26,3143 75461 SL SQRT # SCALE UP BEFORE SQRT
037822,000365: 26,3144 20216 13D # HAS FACTOR FOR UP SCALING
037823,000366: 26,3145 52005 DMP GOTO
037824,000367: 26,3146 15250 KACOS
037825,000368: 26,3147 52226 THETDONE
037826,000369:
|
Page 861 |
037828,000371: # * START INITIAL ROLL ...
037829,000372:
037830,000373: 25,2000 SETLOC REENTRY
037831,000374: 25,2000 BANK
037832,000375:
037833,000376: 25,2260 COUNT* $$/ENTRY
037834,000377:
037835,000378: # MM = 63 , 64 ..
037836,000379: 25,2260 43014 INITROLL BON BOFF # IF D- .05G NEG, GO TO LIMITL/D
037837,000380: 25,2261 03312 INRLSW
037838,000381: 25,2262 52362 INITRL1
037839,000382: 25,2263 03354 .05GSW
037840,000383: 25,2264 53524 LIMITL/D
037841,000384:
037842,000385: # MM = 64, NOW
037843,000386:
037844,000387: # 3
037845,000388: # KA = KA1 LEQ + KA2
037846,000389: 25,2265 63545 DLOAD DSQ
037847,000390: 25,2266 03654 LEQ
037848,000391: 25,2267 56205 DMP DDV
037849,000392: 25,2270 03654 LEQ
037850,000393: 25,2271 15306 1/KA1 # = 25 /(64 1.8)
037851,000394: 25,2272 47015 DAD RTB
037852,000395: 25,2273 15310 KA2 # = .2
037853,000396: 25,2274 54432 P64 # ROLLC VI RDOT
037854,000397: # XXX.XX DEG XXXXX. FPS XXXXX. FPS
037855,000398: 25,2275 03720 STORE KAT
037856,000399:
037857,000400: 25,2276 50025 DSU BMN
037858,000401: 25,2277 15316 KALIM
037859,000402: 25,2300 52304 +4
037860,000403: 25,2301 77745 DLOAD
037861,000404: 25,2302 15316 KALIM
037862,000405: 25,2303 03720 STORE KAT
037863,000406: 25,2304 45345 DLOAD DSU # IF V-VFINAL1 NEG, GO TO FINAL PHASE.
037864,000407: 25,2305 03674 V
037865,000408: 25,2306 15304 VFINAL1
037866,000409: 25,2307 51014 CLEAR BPL # (CAN'T CLEAR INRLSW AFTER HERE: RESTARTS)
037867,000410: 25,2310 03265 GONEPAST # GONEPAST WAS INITIALLY SET=1 TO FORCE
037868,000411: # ROLLC TO REMAIN AS DEFINED BY HEADSUP
037869,000412: # UNTIL START OF P64. (UNTIL D > .05G)
037870,000413: 25,2311 52316 D0EQ
037871,000414: 25,2312 52131 SSP GOTO
037872,000415: 25,2313 03646 GOTOADDR
037873,000416: 25,2314 53316 KEP2 # AND IDLE UNTIL D>0.2 G. (NO P66 HERE)
037874,000417: 25,2315 52351 INROLOUT # GO TO LIMITL/D AFTER SETTING INRLSW.
037875,000418:
037876,000419: 25,2316 41345 D0EQ DLOAD DMP # D0 = KA3 LEQ + KA4
037877,000420: 25,2317 03654 LEQ
|
Page 862 |
037879,000422: 25,2320 15312 KA3
037880,000423: 25,2321 77615 DAD
037881,000424: 25,2322 15314 KA4
037882,000425: 25,2323 03710 STORE D0 # D0/805
037883,000426: 25,2324 40065 BDDV BOV
037884,000427: 25,2325 15270 C001 # (-4/25 G) B-8
037885,000428: 25,2326 52327 +1 # CLEAR OVFIND, IF ON.
037886,000429: 25,2327 17706 STODL C/D0 # (-4/D0) B-8
037887,000430: 25,2330 03624 LAD # IF V-VFINAL +K(RDOT/V)CUBED POS,L/D=-LAD
037888,000431: 25,2331 17634 STODL L/D
037889,000432: 25,2332 03700 RDOT
037890,000433: 25,2333 41471 DDV PUSH
037891,000434: 25,2334 03674 V
037892,000435: 25,2335 41316 DSQ DMP
037893,000436: 25,2336 45271 DDV DSU
037894,000437: 25,2337 15300 1/K44
037895,000438: 25,2340 15302 VFINAL
037896,000439: # 3
037897,000440: # V-VFINAL +(RDOT/V) / K44 OVFL $
037898,000441:
037899,000442: 25,2341 40015 DAD BOV
037900,000443: 25,2342 03674 V
037901,000444: 25,2343 52351 INROLOUT # GO TO LIMITL/D AFTER SETTING INRLSW.
037902,000445: 25,2344 71240 BMN DLOAD
037903,000446: 25,2345 52351 INROLOUT # GO TO LIMITL/D AFTER SETTING INRLSW.
037904,000447: 25,2346 03624 LAD
037905,000448: 25,2347 77676 DCOMP
037906,000449: 25,2350 03634 STORE L/D
037907,000450:
037908,000451: # SET INRLSW AT END FOR RESTART PROTECTION
037909,000452: 25,2351 77614 INROLOUT BOFSET # END OF PRE .05G PATH OF INITROLL.
037910,000453: 25,2352 03052 INRLSW # SWITCH IS ZERO INITIALLY.
037911,000454: 25,2353 53524 LIMITL/D # (GO TO)
037912,000455:
037913,000456: 25,2354 45345 KATEST DLOAD DSU # IF KAT - D POS, GO TO CONSTD
037914,000457: 25,2355 03720 KAT
037915,000458: 25,2356 03640 D # IF POS, OUT WITH COMMAND VIA LIMITL/D
037916,000459: 25,2357 52044 BPL GOTO
037917,000460: 25,2360 53524 LIMITL/D
037918,000461: 25,2361 53231 CONSTD
037919,000462:
037920,000463: 25,2362 43345 INITRL1 DLOAD DAD # IF RDOT + VRCONT POS, GO TO HUNTEST
037921,000464: 25,2363 03700 RDOT
037922,000465: 25,2364 15262 VRCONT
037923,000466: 25,2365 45040 BMN CALL # IF POSITIVE, FALL INTO HUNTEST.
037924,000467: 25,2366 52354 KATEST
037925,000468:
037926,000469: 25,2367 53021 FOREHUNT # INITIALIZE HUNTEST.
037927,000470:
|
Page 863 |
037929,000472:
037930,000473: # * START HUNT TEST ..
037931,000474:
037932,000475: # MM = 64
037933,000476: 25,2370 77731 SSP # INITIALIZE HUNTEST ON FIRST PASS
037934,000477: 25,2371 03646 GOTOADDR
037935,000478: 25,2372 52373 HUNTEST # MUST GO AFTER FOREHUNT FOR RESTARTS.
037936,000479:
037937,000480: 25,2373 77745 HUNTEST DLOAD
037938,000481: 25,2374 03640 D
037939,000482: 25,2375 17664 STODL A1 # A1/805 = A1/25G
037940,000483:
037941,000484: 25,2376 03624 LAD
037942,000485: 25,2377 17647 STODL TEM1B
037943,000486: 25,2400 03700 RDOT
037944,000487: 25,2401 71240 BMN DLOAD # IF RDOT NEG,TEM1B=LAD, OTHERWISE = LEWD
037945,000488: 25,2402 52406 A0CALC
037946,000489: 25,2403 03725 LEWD
037947,000490: 25,2404 17647 STODL TEM1B
037948,000491:
037949,000492: 25,2405 03700 RDOT
037950,000493: 25,2406 43271 A0CALC DDV DAD # V1 = V + RDOT/TEM1B
037951,000494: 25,2407 03647 TEM1B
037952,000495: 25,2410 03674 V
037953,000496: 25,2411 14326 STODL V1 # V1/2 VS
037954,000497:
037955,000498: 25,2412 03700 RDOT
037956,000499: 25,2413 56316 DSQ DDV # A0=(V1/V)SQ(D+RDOT SQ/(TEM1B 2 C1 HS)
037957,000500: 25,2414 03647 TEM1B
037958,000501: 25,2415 43271 DDV DAD
037959,000502: 25,2416 15274 2C1HS
037960,000503: 25,2417 03640 D
037961,000504: 25,2420 41205 DMP DMP
037962,000505: 25,2421 00326 V1
037963,000506: 25,2422 00326 V1
037964,000507: 25,2423 77671 DDV
037965,000508: 25,2424 03622 VSQUARE
037966,000509: 25,2425 14330 STODL A0 # A0/805 = A0/25G
037967,000510:
037968,000511: 25,2426 03700 RDOT
037969,000512: 25,2427 71244 BPL DLOAD
037970,000513: 25,2430 52433 V1LEAD
037971,000514: 25,2431 00330 A0
037972,000515: 25,2432 03664 STORE A1 # A1/25G
037973,000516:
037974,000517: 25,2433 51145 V1LEAD DLOAD BPL # IF L/D NEG, V1=V1 - 1000
037975,000518: 25,2434 03634 L/D
037976,000519: 25,2435 52442 HUNTEST1
037977,000520:
037978,000521: 25,2436 45345 DLOAD DSU
037979,000522: 25,2437 00326 V1
|
Page 864 |
037981,000524: 25,2440 15216 VQUIT
037982,000525: 25,2441 00326 STORE V1
037983,000526:
037984,000527: 25,2442 41345 HUNTEST1 DLOAD DMP # ALP = 2 C1 HS A0/LEWD V1 V1
037985,000528: 25,2443 00330 A0
037986,000529: 25,2444 15274 2C1HS
037987,000530: 25,2445 40271 DDV SETPD
037988,000531: 25,2446 00326 V1
037989,000532: 25,2447 00001 0
037990,000533: 25,2450 56271 DDV DDV
037991,000534: 25,2451 00326 V1
037992,000535: 25,2452 03725 LEWD
037993,000536: 25,2453 03704 STORE ALP
037994,000537:
037995,000538: 25,2454 55221 BDSU BDDV # FACT1 = V1 / (1 - ALP)
037996,000539: 25,2455 15344 BARELY1
037997,000540: 25,2456 00326 V1
037998,000541: 25,2457 17616 STODL FACT1 # FACT1 / 2VS
037999,000542:
038000,000543: 25,2460 03704 ALP
038001,000544: 25,2461 41225 DSU DMP # FACT2 = ALP(ALP - 1) / A0
038002,000545: 25,2462 15344 BARELY1
038003,000546: 25,2463 03704 ALP
038004,000547: 25,2464 77671 DDV
038005,000548: 25,2465 00330 A0
038006,000549: 25,2466 03620 STORE FACT2 # FACT2 (25G)
038007,000550:
038008,000551: 25,2467 43205 DMP DAD
038009,000552: 25,2470 03175 Q7 # Q7 /805 = Q7 / 25G
038010,000553: 25,2471 03704 ALP # VL=FACT1 (1-SQRT(Q7 FACT2 +ALP) )
038011,000554: 25,2472 44366 SQRT BDSU
038012,000555: 25,2473 15344 BARELY1
038013,000556: 25,2474 77605 DMP
038014,000557: 25,2475 03616 FACT1
038015,000558: 25,2476 03757 STORE VL # VL / 2 VS
038016,000559:
038017,000560: 25,2477 41221 BDSU DMP # GAMMAL1 = LEWD (V1-VL)/VL
038018,000561: 25,2500 00326 V1
038019,000562: 25,2501 03725 LEWD
038020,000563: 25,2502 77671 DDV
038021,000564: 25,2503 03757 VL
038022,000565: 25,2504 14027 STODL GAMMAL1 # GAMMAL1 USED IN UPCONTROL
038023,000566:
038024,000567: # GAMMAL1 = PDL 22D.
038025,000568: 25,2505 03757 VL
038026,000569: 25,2506 50025 DSU BMN # IF VL-VLMIN NEG, GO TO PREFINAL
038027,000570: 25,2507 15206 VLMIN
038028,000571: 25,2510 53332 PREFINAL
038029,000572:
038030,000573: 25,2511 63545 DLOAD DSQ
|
Page 865 |
038032,000575: 25,2512 03757 VL
038033,000576: 25,2513 17666 STODL VBARS # VBARS / 4 VS VS
038034,000577:
038035,000578: 25,2514 15334 HALVE # IF VSAT-VL NEG, GO TO CONSTD
038036,000579: 25,2515 50025 DSU BMN
038037,000580: 25,2516 03757 VL
038038,000581: 25,2517 53225 BECONSTD # SET MODE=HUNTEST, CONTINUE IN CONSTD
038039,000582: 25,2520 17662 STODL DVL # DVL / 2VS
038040,000583:
038041,000584: 25,2521 15334 HALVE
038042,000585: 25,2522 03672 STORE VS1 # VS1 = VSAT
038043,000586:
038044,000587: 25,2523 50025 DSU BMN # IF V1 GREATER THAN VSAT, GO ON
038045,000588: 25,2524 00326 V1
038046,000589: 25,2525 52533 GETDHOOK
038047,000590: 25,2526 77621 BDSU
038048,000591: 25,2527 03662 DVL
038049,000592: 25,2530 17662 STODL DVL # DVL = DVL - (VSAT-V1) = V1 - VL
038050,000593: 25,2531 00326 V1
038051,000594: 25,2532 03672 STORE VS1 # VS1 = V1, IN THIS CASE
038052,000595:
038053,000596: 25,2533 45145 GETDHOOK DLOAD CALL # DHOOK=((1-VS1/FACT1) SQ -ALP)/FACT2
038054,000597: 25,2534 03672 VS1 # VS1 / 2 VS
038055,000598: 25,2535 53003 DHOOKYQ7 # GO CALC DHOOK
038056,000599: 25,2536 03656 STORE DHOOK # DHOOK / 25G
038057,000600:
038058,000601: 25,2537 56261 SR DDV
038059,000602: 25,2540 20607 6 # CHOOK
038060,000603: 25,2541 03175 Q7
038061,000604: 25,2542 77625 DSU
038062,000605: 25,2543 15252 CHOOK # = .25/16 = (-6)
038063,000606: 25,2544 03660 STORE AHOOKDV
038064,000607:
038065,000608: 25,2545 41215 DAD DMP # GAMMAL= GAMMAL1-CH1 DVL SQ(1+AHOOK DVL)
038066,000609: 25,2546 31771 1/16TH
038067,000610: 25,2547 15256 CH1
038068,000611: 25,2550 41205 DMP DMP
038069,000612: 25,2551 03662 DVL
038070,000613: 25,2552 03662 DVL
038071,000614: 25,2553 56271 DDV DDV
038072,000615: 25,2554 03656 DHOOK
038073,000616: 25,2555 03666 VBARS
038074,000617: 25,2556 50021 BDSU BMN
038075,000618: 25,2557 00027 GAMMAL1
038076,000619: 25,2560 52750 NEGAMA
038077,000620: 25,2561 03761 HUNTEST3 STORE GAMMAL
038078,000621:
038079,000622: 25,2562 77625 DSU # GAMMAL1=GAMMAL1 +Q19 (GAMMAL-GAMMAL1)
038080,000623: 25,2563 00027 GAMMAL1
038081,000624: 25,2564 43205 DMP DAD
|
Page 866 |
038083,000626: 25,2565 15334 Q19
038084,000627: 25,2566 00027 GAMMAL1
038085,000628: 25,2567 14027 STODL GAMMAL1
038086,000629: 25,2570 03761 GAMMAL
038087,000630:
|
Page 867 |
038089,000632:
038090,000633: # *START RANGE PREDICTION ...
038091,000634:
038092,000635: # C(MPAC) = GAMMAL
038093,000636: 25,2571 60516 RANGER DSQ SR2 # COSG = 1-GAMMAL SQ/2, TRUNCATED SERIES
038094,000637: 25,2572 77621 BDSU
038095,000638: 25,2573 15334 HALVE
038096,000639: 25,2574 17670 STODL COSG/2
038097,000640: 25,2575 03666 VBARS # E=SQRT(1+VBARS........
038098,000641:
038099,000642: 25,2576 41225 DSU DMP
038100,000643: 25,2577 15334 HALVE
038101,000644: 25,2600 03666 VBARS
038102,000645: 25,2601 41205 DMP DMP
038103,000646: 25,2602 03670 COSG/2
038104,000647: 25,2603 03670 COSG/2
038105,000648: 25,2604 43312 SL2 DAD
038106,000649: 25,2605 31771 C1/16 # C1/16 = 1/16
038107,000650: 25,2606 65366 SQRT PDDL # E/4 INTO PDL
038108,000651:
038109,000652: 25,2607 03666 VBARS
038110,000653: 25,2610 41205 DMP DMP # ASKEP/2 = ARCSIN(VBARS COSG SING/E)
038111,000654: 25,2611 03670 COSG/2
038112,000655: 25,2612 03761 GAMMAL
038113,000656: 25,2613 67471 DDV ASIN
038114,000657: 25,2614 41552 SL1 PUSH # ASKEP TO PDL 0.
038115,000658: 25,2615 17731 STODL ASKEP # BALLISTIC RANGE ASKEP/2PI
038116,000659:
038117,000660: # FOR TM, STORE RANGE COMPONENTS OVERLAPPING (SP)
038118,000661: 25,2616 03757 VL
038119,000662: 25,2617 43205 DMP DAD # ASP1 = Q2 + Q3 VL
038120,000663: 25,2620 15172 Q3
038121,000664: 25,2621 03712 Q2
038122,000665: 25,2622 03732 STORE ASP1 # FINAL PHASE RANGE ASP1/2 PI
038123,000666:
038124,000667: 25,2623 63525 PDDL DSQ # ASP1 TO PDL 2.
038125,000668: 25,2624 00326 V1
038126,000669: # 2
038127,000670: # ASPUP= -C12 LOG(V1 Q7/VBARS A0)/GAMMAL1
038128,000671: 25,2625 56205 DMP DDV
038129,000672: 25,2626 03175 Q7
038130,000673: 25,2627 03666 VBARS
038131,000674: 25,2630 45071 DDV CALL
038132,000675: 25,2631 00330 A0
038133,000676: 25,2632 46155 LOG # RETURN WITH -LOG IN MPAC
038134,000677:
038135,000678: 25,2633 56205 DMP DDV
038136,000679: 25,2634 15210 C12
038137,000680: 25,2635 00027 GAMMAL1
038138,000681: 25,2636 03733 STORE ASPUP # UP PHASE RANGE ASPUP / 2 PI
|
Page 868 |
038140,000683: 25,2637 41325 PDDL DMP # ASPUP TO PDL 4.
038141,000684: 25,2640 15260 KC3 # KC3 =-4 VS VS/ 2 PI 805 RE
038142,000685: # ASPDWN = KC3 RDOT V / A0
038143,000686: 25,2641 03700 RDOT
038144,000687: 25,2642 56205 DMP DDV
038145,000688: 25,2643 03674 V
038146,000689: 25,2644 00330 A0
038147,000690: 25,2645 41471 DDV PUSH # ASPDWN TO PDL 6.
038148,000691: 25,2646 03624 LAD
038149,000692: 25,2647 17734 STODL ASPDWN # RANGE TO PULL OUT ASPDWN /2 PI
038150,000693:
038151,000694: 25,2650 15176 Q6
038152,000695: 25,2651 41225 DSU DMP # ASP3 = Q5(Q6-GAMMAL)
038153,000696: 25,2652 03761 GAMMAL
038154,000697: 25,2653 15174 Q5
038155,000698: 25,2654 27735 STOVL ASP3 # GAMMA CORRECTION ASP3/2PI
038156,000699:
038157,000700: 25,2655 03731 ASKEP # GET HI-WD AND
038158,000701: 25,2656 17126 STODL ASPS(TM) # SAVE HI-WORD OF ASP'S FOR TM.
038159,000702:
038160,000703: 25,2657 03735 ASP3
038161,000704: 25,2660 43215 DAD DAD
038162,000705: # ASPDWN FROM PDL 6.
038163,000706: # ASPUP FROM PDL 4.
038164,000707: 25,2661 43215 DAD DAD
038165,000708: # ASP1 FROM PDL 2.
038166,000709: # ASKEP FROM PDL 0.
038167,000710: 25,2662 41025 DSU BOVB # CLEAR OVFIND.
038168,000711: 25,2663 03702 THETAH
038169,000712: 25,2664 57544 TCDANZIG
038170,000713: 25,2665 03610 STORE DIFF # DIFF = (ASP-THETAH) / 2 PI
038171,000714: # ASP=ASKEP+ASP1+ASPUP+ASP3+ASPDWN = TOTAL RANGE
038172,000715:
038173,000716: 25,2666 45246 ABS DSU # IF ABS(THETAH-ASP) -25NM NEG, GO TO UPSY
038174,000717: 25,2667 15224 25NM
038175,000718: 25,2670 43040 BMN BON
038176,000719: 25,2671 53032 GOTOUPSY
038177,000720: 25,2672 03311 HIND
038178,000721: 25,2673 52677 GETDLEWD
038179,000722:
038180,000723: 25,2674 51145 DLOAD BPL
038181,000724: 25,2675 03610 DIFF
038182,000725: 25,2676 53220 DCONSTD # EVENTUALLY SETS MODE = HUNTEST.
038183,000726: 25,2677 41345 GETDLEWD DLOAD DMP
038184,000727: # DLEWD = DLEWD (DIFF/(DIFFOLD-DIFF))
038185,000728: 25,2700 03642 DLEWD
038186,000729: 25,2701 03610 DIFF
038187,000730: 25,2702 45325 PDDL DSU
038188,000731: 25,2703 03612 DIFFOLD
038189,000732: 25,2704 03610 DIFF
|
Page 869 |
038191,000734: 25,2705 77665 BDDV
038192,000735: 25,2706 77626 LWDSTORE STADR
038193,000736: 25,2707 74135 STORE DLEWD
038194,000737: 25,2710 50015 DAD BMN # IF LEWD+DLEWD NEG, DLEWD=-LEWD/2
038195,000738: 25,2711 03725 LEWD
038196,000739: 25,2712 52744 LEWDPTR
038197,000740: 25,2713 77600 BOV
038198,000741: 25,2714 52740 LEWDOVFL
038199,000742: 25,2715 03725 STORE LEWD
038200,000743:
038201,000744: 25,2716 77776 SIDETRAK EXIT
038202,000745:
038203,000746: 25,2717 04606 TC E7SETTER
038204,000747:
038205,000748: 25,2720 35055 CA PRIO16 # DROP GRP 5 RESTART PRIO TO 1 LESS THAN
038206,000749: 25,2721 55270 TS PHSPRDT5 # GRP 4.
038207,000750:
038208,000751: 25,2722 05402 TC PHASCHNG
038209,000752: 25,2723 00474 OCT 00474 # RESTART GRP 4 AT PRE-HUNT.
038210,000753: # FORCE RESTART TO PICK UP IN GRP 4:
038211,000754: # USE PRIO 17 FOR GRP 4 (< SERVICER PRIO)
038212,000755: 25,2724 01,2212 4P47SPT1 = 4.47SPOT
038213,000756: 25,2724 35055 CA PRIO16 # CONTINUE GRP 5 AT LOWER PRIO THAN EITHER
038214,000757: # GRP 4 OR SERVICER.
038215,000758: 25,2725 05176 TC PRIOCHNG
038216,000759:
038217,000760: 25,2726 33031 CAF ADENDEXT # SIDETRACK NEXT PASS UNTIL THIS ONE DONE.
038218,000761: 25,2727 55645 TS GOTOADDR # ONLY AFTER RESTART IS LEFT AFTER DETOUR.
038219,000762:
038220,000763: 25,2730 06006 TC INTPRET
038221,000764:
038222,000765: 25,2731 43145 DLOAD SET
038223,000766: 25,2732 03610 DIFF
038224,000767: 25,2733 03071 HIND
038225,000768: 25,2734 17612 STODL DIFFOLD # DIFFOLD / 2 PI
038226,000769:
038227,000770: 25,2735 15200 Q7F
038228,000771: 25,2736 37175 STCALL Q7 # Q7 / 805 FPSS
038229,000772: 25,2737 52373 HUNTEST # (GO TO)
038230,000773:
038231,000774: 25,2740 77745 LEWDOVFL DLOAD
038232,000775: 25,2741 15344 NEARONE
038233,000776: 25,2742 37725 STCALL LEWD
038234,000777: 25,2743 53220 DCONSTD # (GO TO) ALSO WILL SET MODE = HUNTEST
038235,000778:
038236,000779: 25,2744 70545 LEWDPTR DLOAD SR1
038237,000780: 25,2745 03725 LEWD
038238,000781: 25,2746 52076 DCOMP GOTO
038239,000782: 25,2747 52706 LWDSTORE
038240,000783:
|
Page 870 |
038242,000785: # NEGAMA IS PART OF HUNTEST ...
038243,000786:
038244,000787: 25,2750 41205 NEGAMA DMP DMP # ENTER WITH GAMMAL IN MPAC
038245,000788: 25,2751 03757 VL
038246,000789: 25,2752 15152 1/3RD
038247,000790: 25,2753 41325 PDDL DMP # PUSH GAMMAL VL/3
038248,000791: 25,2754 03725 LEWD
038249,000792: 25,2755 15152 1/3RD
038250,000793: 25,2756 43325 PDDL DAD # PUSH LEWD/3
038251,000794: 25,2757 03660 AHOOKDV
038252,000795: 25,2760 15254 1/24TH
038253,000796: 25,2761 41205 DMP DMP # DEL VL = (GAMMAL VL/3)/(LEWD/3-DVL
038254,000797: 25,2762 03662 DVL # (2/3 + AHOOKDV)(CH1 GS/DHOOK VL))
038255,000798: 25,2763 15256 CH1
038256,000799: 25,2764 56271 DDV DDV
038257,000800: 25,2765 03656 DHOOK
038258,000801: 25,2766 03757 VL
038259,000802: 25,2767 55221 BDSU BDDV
038260,000803: # LEWD/3
038261,000804: # GAMMAL VL /3
038262,000805: 25,2770 77615 DAD
038263,000806: 25,2771 03757 VL
038264,000807: 25,2772 37757 STCALL VL # VL/2 VS
038265,000808:
038266,000809: 25,2773 53003 DHOOKYQ7 # GO CALC Q7
038267,000810: # Q7=((1-VL/FACT1)SQ - ALP)/FACT2
038268,000811: 25,2774 17175 STODL Q7 # Q7 / 25G
038269,000812:
038270,000813: 25,2775 03757 VL
038271,000814: 25,2776 77716 DSQ
038272,000815: 25,2777 17666 STODL VBARS # VBARS / 4 VS VS
038273,000816:
038274,000817: 25,3000 15336 3ZEROS
038275,000818: 25,3001 77650 GOTO # SET GAMMAL = 0
038276,000819: 25,3002 52561 HUNTEST3
038277,000820:
038278,000821: 25,3003 56342 DHOOKYQ7 SR1 DDV # SUBROUTINE TO CALC DHOOK OR Q7)
038279,000822: 25,3004 03616 FACT1
038280,000823: 25,3005 72421 BDSU SL1
038281,000824: 25,3006 15334 HALVE
038282,000825: 25,3007 45316 DSQ DSU
038283,000826: 25,3010 03704 ALP
038284,000827: 25,3011 43471 DDV RVQ
038285,000828: 25,3012 03620 FACT2
038286,000829:
|
Page 871 |
038288,000831: # COME TO PRE-HUNT WHEN RESTART OCCURS AFTER
038289,000832: # HUNTEST IS SIDE-TRACKED AT SIDETRAK.
038290,000833: # PICK UP IN GROUP 4.
038291,000834:
038292,000835: 25,3013 06006 PRE-HUNT TC INTPRET
038293,000836: 25,3014 45014 CLEAR CALL
038294,000837: 25,3015 03271 HIND # HIND 99D BIT 6 FLAG 6
038295,000838: 25,3016 53021 FOREHUNT # RE-INITIALIZE HUNTEST AFTER RE-START.
038296,000839: 25,3017 77650 GOTO
038297,000840: 25,3020 52373 HUNTEST
038298,000841:
038299,000842: 25,3021 77745 FOREHUNT DLOAD # INITIALIZE HUNTEST.
038300,000843: 25,3022 15336 3ZEROS
038301,000844: 25,3023 17612 STODL DIFFOLD
038302,000845: 25,3024 15160 DLEWD0
038303,000846: 25,3025 17642 STODL DLEWD
038304,000847: 25,3026 15154 LEWD1
038305,000848: 25,3027 03725 STORE LEWD
038306,000849: 25,3030 77616 RVQ
038307,000850:
038308,000851: 25,3031 53574 ADENDEXT CADR ENDEXIT
038309,000852:
|
Page 872 |
038311,000854:
038312,000855: # * START UP CONTROL ...
038313,000856:
038314,000857: # MM = 65
038315,000858: 25,3032 77634 GOTOUPSY RTB # END OF HUNTEST
038316,000859: 25,3033 54440 P65 # HUNTEST USE OF GRP4 IS DISABLED BY P65
038317,000860: # USE FOR DISPLAY.
038318,000861: # SET MODE = UPCONTRL.
038319,000862: # RETURN FROM P65 DIRECTLY TO UPCONTRL
038320,000863: # VIA THE GOTOADDR AT REFAZE10.
038321,000864:
038322,000865: 25,3034 45345 UPCONTRL DLOAD DSU # IF D-140 POS, NOSWITCH =1
038323,000866: 25,3035 03640 D # (SUPPRESS LATERAL SWITCH)
038324,000867: 25,3036 15222 C21
038325,000868: 25,3037 43040 BMN SET
038326,000869: 25,3040 53042 +2
038327,000870: 25,3041 03070 NOSWITCH
038328,000871:
038329,000872: 25,3042 45345 DLOAD DSU # IF V-V1 POS, GO TO DOWN CONTROL.
038330,000873: 25,3043 03674 V
038331,000874: 25,3044 00326 V1
038332,000875: 25,3045 71244 BPL DLOAD
038333,000876: 25,3046 53257 DOWNCNTL
038334,000877: 25,3047 03640 D
038335,000878: 25,3050 50025 DSU BMN # IF D- Q7 NEG, GO TO KEP
038336,000879: 25,3051 03175 Q7
038337,000880: 25,3052 53312 KEP
038338,000881: 25,3053 51145 DLOAD BPL # IF RDOT NEG, DO VLTEST
038339,000882: 25,3054 03700 RDOT
038340,000883: 25,3055 53064 CONT1
038341,000884:
038342,000885: 25,3056 45345 VLTEST DLOAD DSU # IF V-VL-C18 NEG,EGSW=1,MODE=PREDICT3
038343,000886: 25,3057 03674 V
038344,000887: 25,3060 03757 VL
038345,000888: 25,3061 50025 DSU BMN
038346,000889: 25,3062 15166 C18
038347,000890: 25,3063 53332 PREFINAL
038348,000891:
038349,000892: 25,3064 77745 CONT1 DLOAD # IF D-A0 POS, L/D = LAD, GO TO LIMITL/D
038350,000893: 25,3065 03640 D
038351,000894: 25,3066 50025 DSU BMN
038352,000895: 25,3067 00330 A0
038353,000896: 25,3070 53074 CONT3
038354,000897: 25,3071 52145 DLOAD GOTO
038355,000898: 25,3072 03624 LAD
038356,000899: 25,3073 53523 STOREL/D
038357,000900:
038358,000901: 25,3074 41345 CONT3 DLOAD DMP # VREF=FACT1(1-SQRT(FACT2 D + ALP))
038359,000902: 25,3075 03640 D
038360,000903: 25,3076 03620 FACT2
|
Page 873 |
038362,000905: 25,3077 75415 DAD SQRT
038363,000906: 25,3100 03704 ALP
038364,000907: 25,3101 41221 BDSU DMP
038365,000908: 25,3102 15344 BARELY1
038366,000909: 25,3103 03616 FACT1
038367,000910: 25,3104 01312 STORE VREF # VREF / 2VS
038368,000911:
038369,000912: 25,3105 41221 BDSU DMP # RDOTREF = LEWD(V1-VREF)
038370,000913: 25,3106 00326 V1
038371,000914: 25,3107 03725 LEWD
038372,000915: 25,3110 15310 STODL RDOTREF # RDOTREF / 2VS
038373,000916:
038374,000917: 25,3111 03672 VS1
038375,000918: 25,3112 50025 DSU BMN # IF VSAT-VREF NEG, GO TO CONTINU2
038376,000919: 25,3113 01312 VREF
038377,000920: 25,3114 53133 CONTINU2
038378,000921:
038379,000922: 25,3115 41406 PUSH PUSH # VS1-VREF TO PDL TWICE
038380,000923: 25,3116 56205 DMP DDV # RDHOOK=CH1(1+DV AHOOKDV/DVL) DV DV
038381,000924: 25,3117 03660 AHOOKDV # /DHOOK VREF
038382,000925: 25,3120 03662 DVL # WHERE DV = (VS1-VREF)
038383,000926: 25,3121 41215 DAD DMP
038384,000927: 25,3122 31771 1/16TH
038385,000928: 25,3123 15256 CH1
038386,000929: 25,3124 41205 DMP DMP
038387,000930: # VS1-VREF FROM PDL TWICE.
038388,000931: 25,3125 77671 DDV
038389,000932: 25,3126 03656 DHOOK
038390,000933: 25,3127 44271 DDV BDSU
038391,000934: 25,3130 01312 VREF
038392,000935: 25,3131 01310 RDOTREF # C(RDOTREF)= LEWD (V1-VREF)
038393,000936: 25,3132 01310 STORE RDOTREF # RDOTREF = RDOTREF - RDHOOK
038394,000937:
038395,000938: 25,3133 45345 CONTINU2 DLOAD DSU
038396,000939: 25,3134 03640 D
038397,000940: 25,3135 15344 Q7MIN
038398,000941: 25,3136 50004 BOVB BMN
038399,000942: 25,3137 57544 TCDANZIG # CLEAR OVFL IND, IF ON.
038400,000943: 25,3140 53151 UPCNTRL3
038401,000944: 25,3141 45345 DLOAD DSU
038402,000945: 25,3142 03664 A1
038403,000946: 25,3143 03175 Q7
038404,000947: 25,3144 45325 PDDL DSU
038405,000948: 25,3145 03640 D
038406,000949: 25,3146 03175 Q7
038407,000950: 25,3147 45471 DDV STADR
038408,000951: 25,3150 74163 STORE FACTOR # FACTOR / 25G
038409,000952:
|
Page 874 |
038411,000954:
038412,000955: # SKIPPER
038413,000956:
038414,000957: # DELTA L/D=-((RDOT-RDOTREF)F1 KB1+V-VREF)F1 KB2
038415,000958: # WHERE F1 = FACTOR
038416,000959:
038417,000960: 25,3151 77745 UPCNTRL3 DLOAD
038418,000961: 25,3152 03700 RDOT
038419,000962: 25,3153 41225 DSU DMP # L/D = LEWD
038420,000963: 25,3154 01310 RDOTREF # -((RDOT-RDOTREF)F1/KB1+V-VREF)F1/KB2
038421,000964: 25,3155 03614 FACTOR
038422,000965: 25,3156 43271 DDV DAD
038423,000966: 25,3157 15212 1/KB1
038424,000967: 25,3160 03674 V
038425,000968: 25,3161 41225 DSU DMP
038426,000969: 25,3162 01312 VREF
038427,000970: 25,3163 03614 FACTOR
038428,000971: 25,3164 41471 DDV PUSH
038429,000972:
038430,000973: 25,3165 15214 -1/KB2 # DELTA L/D INTO PDL
038431,000974: 25,3166 51400 BOV ABS # NONLINEAR CIRCUIT FOR REDUCING HIGH GAIN
038432,000975: 25,3167 53470 GOMAXL/D
038433,000976: 25,3170 50025 DSU BMN
038434,000977: 25,3171 15276 PT1/16
038435,000978: 25,3172 53177 NEXT1
038436,000979: 25,3173 43205 DMP DAD
038437,000980: 25,3174 15156 POINT1
038438,000981: 25,3175 15276 PT1/16
038439,000982: 25,3176 41565 SIGN PUSH # ATTACH SIGN OF PUSH TO MPAC THEN PUSH
038440,000983:
038441,000984: 25,3177 42545 NEXT1 DLOAD SL4
038442,000985: # DELTA L/D FROM PDL.
038443,000986: 25,3200 77615 DAD
038444,000987: 25,3201 03725 LEWD
038445,000988: 25,3202 41400 NEGTESTS BOV PUSH # L/D TO PDL FOR USE IN NEGTESTS.
038446,000989: 25,3203 53470 GOMAXL/D
038447,000990: 25,3204 17634 STODL L/D
038448,000991: # IF D-C20 POS, LATSW =0
038449,000992: # AND IF L/D NEG, L/D = 0.
038450,000993: 25,3205 03640 D
038451,000994: 25,3206 50025 DSU BMN
038452,000995: 25,3207 15220 C20
038453,000996: 25,3210 53524 LIMITL/D
038454,000997: 25,3211 71214 CLEAR DLOAD
038455,000998: 25,3212 03273 LATSW # =21D. ROLL OVER TOP, REGARDLESS.
038456,000999: # L/D FROM PDL.
038457,001000: 25,3213 71244 BPL DLOAD
038458,001001: 25,3214 53524 LIMITL/D
038459,001002: 25,3215 15336 3ZEROS
038460,001003: 25,3216 37634 STCALL L/D
038461,001004: 25,3217 53524 LIMITL/D # (GO TO)
038462,001005:
|
Page 875 |
038464,001007: 25,3220 77745 DCONSTD DLOAD # TWO RANGER ENTRIES TO CONSTD HERE
038465,001008: 25,3221 03610 DIFF
038466,001009: # SAVE OLD VALUE OF DIFF FOR NEXT PASS.
038467,001010: 25,3222 17612 STODL DIFFOLD # DIFFOLD / 2 PI
038468,001011:
038469,001012: 25,3223 15200 Q7F
038470,001013: 25,3224 03175 STORE Q7
038471,001014:
038472,001015: 25,3225 47131 BECONSTD SSP RTB # A HUNTEST ENTRY INTO CONSTD.
038473,001016: 25,3226 03646 GOTOADDR # RESET MODE TO HUNTEST
038474,001017: 25,3227 52373 HUNTEST
038475,001018: 25,3230 54505 KILLGRP4 # DEACTIVATE GRP4 FROM HUNTEST.
038476,001019:
038477,001020: 25,3231 77604 CONSTD BOVB
038478,001021: 25,3232 57544 TCDANZIG # CLEAR OVF IND IF ON.
038479,001022:
038480,001023: 25,3233 41345 DLOAD DMP
038481,001024: 25,3234 03654 LEQ
038482,001025: 25,3235 03706 C/D0 # C/D0 = -4/D0 B-8
038483,001026: 25,3236 41325 PDDL DMP # LEQ C/D0 INTO PDL
038484,001027: 25,3237 15264 2HS # 2HS / 4 VS VS
038485,001028: 25,3240 03710 D0
038486,001029: 25,3241 43271 DDV DAD # RDOTREF = -2 HS D0/V
038487,001030: 25,3242 03674 V
038488,001031: 25,3243 03700 RDOT
038489,001032: 25,3244 43205 DMP DAD
038490,001033: 25,3245 15230 K2D # C/D0 LEQ + K2D(RDOT-RDOTREF) INTO PD
038491,001034: 25,3246 77725 PDDL
038492,001035: 25,3247 03710 D0 # D0 /805
038493,001036:
038494,001037: 25,3250 77621 CONSTD1 BDSU # ENTER WITH DREF IN MPAC
038495,001038: 25,3251 03640 D
038496,001039: 25,3252 43205 DMP DAD
038497,001040: 25,3253 15226 K1D # K2D TERM FROM PUSH
038498,001041: 25,3254 52061 SL GOTO
038499,001042: 25,3255 20211 8D
038500,001043: 25,3256 53202 NEGTESTS # (GO TO)
038501,001044:
038502,001045:
038503,001046: 25,3257 77604 DOWNCNTL BOVB # INITIAL PART OF UPCONTROL.
038504,001047: 25,3260 57544 TCDANZIG # CLEAR OVFIND, IF ON.
038505,001048:
038506,001049: 25,3261 54345 DLOAD SR
038507,001050: 25,3262 03624 LAD
038508,001051: 25,3263 20611 8D
038509,001052: 25,3264 45325 PDDL DSU # RDTR = LAD(V1-V)
038510,001053: 25,3265 03674 V
038511,001054: 25,3266 00326 V1
038512,001055: 25,3267 43205 DMP DAD
038513,001056: 25,3270 03624 LAD
|
Page 876 |
038515,001058: 25,3271 03700 RDOT
038516,001059: 25,3272 43205 DMP DAD
038517,001060: 25,3273 15230 K2D
038518,001061: # PUSH UP LAD.
038519,001062: 25,3274 45325 PDDL DSU # LAD + K2D(RDOT-RDTR) INTO PD
038520,001063: 25,3275 00326 V1
038521,001064: 25,3276 03674 V
038522,001065: 25,3277 41316 DSQ DMP
038523,001066: 25,3300 03624 LAD
038524,001067: 25,3301 65271 DDV PDDL # (V1-V)SQ LAD/(2 C1 HS) INTO PD
038525,001068: 25,3302 15274 2C1HS
038526,001069: 25,3303 00326 V1
038527,001070: 25,3304 56316 DSQ DDV
038528,001071: 25,3305 03622 VSQUARE
038529,001072: 25,3306 45265 BDDV DSU # DREF = (V/V1)SQ A0 - PD
038530,001073: 25,3307 00330 A0
038531,001074: # PUSH UP HERE
038532,001075: 25,3310 77650 GOTO # C(MPAC) = DREF
038533,001076: 25,3311 53250 CONSTD1
038534,001077:
038535,001078: # 2 2
038536,001079: # DREF = (V/V1) A0 -(V-V1) LAD/2 C1 HS
|
Page 877 |
038538,001081:
038539,001082: # * START BALLISTIC PHASE ...
038540,001083:
038541,001084: # MM = 66 UPCONTRL ENTRY INTO KEP2.
038542,001085: 25,3312 66234 KEP RTB SSP
038543,001086: 25,3313 54473 P66 # DISPLAY TRIM GIMBAL ANGLE VALUES.
038544,001087: 25,3314 03646 GOTOADDR # SET GOTOADDR TO KEPLER PHASE.
038545,001088: 25,3315 53316 KEP2
038546,001089:
038547,001090: # KEP2 CAN ALSO BE STARTED UP DIRECTLY FROM INITROLL
038548,001091: # IN P64. PROGRAM WILL IDLE IN P64 UNTIL D EXCEEDS
038549,001092: # .2 G BEFORE GOING ON TO P67.
038550,001093:
038551,001094: 25,3316 45345 KEP2 DLOAD DSU # IF Q7F+KDMIN -D NEG, GO TO FINAL PHASE.
038552,001095: 25,3317 15170 Q7FKDMIN # (Q7F + KDMIN)/805
038553,001096: 25,3320 03640 D
038554,001097: 25,3321 72240 BMN TLOAD
038555,001098: 25,3322 53332 PREFINAL
038556,001099:
038557,001100:
038558,001101: # SET ROLLHOLD = ROLLC, IN CASE CMDAPMOD
038559,001102: 25,3323 03316 ROLLC # = +1 EVER ENTERED.
038560,001103: 25,3324 72214 BON TLOAD # IF D > .05G, KEEP PRESENT ROLL COMMAND.
038561,001104: 25,3325 03314 .05GSW # IF D < .05G, SET ROLL COMMAND = 0.
038562,001105: 25,3326 53330 +2
038563,001106: 25,3327 15336 3ZEROS # SET ROLLC & ROLLHOLD =0.
038564,001107: 25,3330 37316 +2 STCALL ROLLC # (SP ROLLHOLD FOLLOWS DP ROLLC)
038565,001108: 25,3331 54402 P62.3 # CALC DESIRED GIMBAL ANGLES AT PRESENT
038566,001109: # RN, VN TO YIELD TRIM ATTITUDE.
038567,001110: # AVAILABLE IN CPHI'S FOR N22.
|
Page 878 |
038569,001112:
038570,001113: # START FINAL PHASE ..
038571,001114:
038572,001115: # MM = 67
038573,001116: 25,3332 47131 PREFINAL SSP RTB
038574,001117: 25,3333 03646 GOTOADDR # RESTART PROTECT: RESET GOTOADDR IF CAME
038575,001118: 25,3334 53332 PREFINAL # FROM HUNTEST.
038576,001119: 25,3335 54477 P67 # DISABLES GRP4. FINE IF FROM HUNTEST. BUT
038577,001120: # MAY ALSO REMOVE RESTART PROTECTION OF
038578,001121: # N69 (P65).
038579,001122: # ROLLC XRNGERR DNRNGERR
038580,001123: # XXX.XX DEG XXXX.X NM XXXX.X NM
038581,001124:
038582,001125: 25,3336 66214 SET SSP
038583,001126: 25,3337 03067 EGSW
038584,001127: 25,3340 03646 GOTOADDR
038585,001128: 25,3341 53342 PREDICT3
038586,001129:
038587,001130:
038588,001131: 25,3342 45345 PREDICT3 DLOAD DSU # IF V-VQUIT NEG, STOP STEERING
038589,001132: 25,3343 03674 V
038590,001133: 25,3344 15216 VQUIT
038591,001134: 25,3345 77440 BMN EXIT
038592,001135: 25,3346 53611 STEEROFF
038593,001136:
038594,001137: 25,3347 04606 TC E7SETTER # PRECAUTIONARY
038595,001138:
038596,001139: 25,3350 35775 CA TWELVE
038597,001140: 25,3351 55761 BACK TS JJ
038598,001141:
038599,001142: 25,3352 41673 CS V
038600,001143: 25,3353 51761 INDEX JJ
038601,001144: 25,3354 63634 AD VREFER # VREF - V, HIGHEST VREF AT END OF TABLE.
038602,001145: 25,3355 10000 CCS A # IF VREF-V POS LOOP BACK
038603,001146: 25,3356 11761 CCS JJ # DECREMENT JJ, JJ CANNOT BE ZERO
038604,001147: 25,3357 13351 TCF BACK
038605,001148: 25,3360 64770 AD ONE
038606,001149: 25,3361 55646 TS TEM1B # V-VREF IN TEM1B (MUST BE POSITIVE NUM)
038607,001150:
038608,001151: 25,3362 51761 INDEX JJ
038609,001152: 25,3363 43634 CS VREFER
038610,001153: 25,3364 51761 INDEX JJ
038611,001154: 25,3365 63635 AD VREFER +1 # V(K+1) - V(K) (POS NUM)
038612,001155: 25,3366 57646 XCH TEM1B
038613,001156: 25,3367 22007 ZL
038614,001157: 25,3370 00006 EXTEND
038615,001158: 25,3371 11646 DV TEM1B
038616,001159: 25,3372 55651 TS GRAD # GRAD = (V-VREF)/(VK+1 - VK) (POS NUM
038617,001160:
038618,001161: 25,3373 34773 CAF FIVE
038619,001162: 25,3374 55650 BACK2 TS MM
|
Page 879 |
038621,001164: 25,3375 34776 CAF THIRTEEN
038622,001165: 25,3376 27761 ADS JJ
038623,001166: 25,3377 50000 INDEX A
038624,001167: 25,3400 43634 CS VREFER
038625,001168: 25,3401 51761 INDEX JJ
038626,001169: 25,3402 63635 AD VREFER +1 # X(K+1) - X(K)
038627,001170: 25,3403 00006 EXTEND
038628,001171: 25,3404 71651 MP GRAD
038629,001172: 25,3405 51761 INDEX JJ
038630,001173: 25,3406 63634 AD VREFER
038631,001174: 25,3407 51650 INDEX MM
038632,001175: 25,3410 55652 TS FX # FX = AK + GRAD (AK+1 - AK)
038633,001176: 25,3411 11650 CCS MM
038634,001177: 25,3412 13374 TCF BACK2
038635,001178: 25,3413 57653 XCH FX +1 # ZERO FX +1 AND GET DREFR
038636,001179: 25,3414 61637 AD D
038637,001180: 25,3415 00006 EXTEND
038638,001181: 25,3416 71657 MP FX +5 # F1
038639,001182: 25,3417 52155 DXCH MPAC # MPAC = F1(D-DREF)
038640,001183:
038641,001184: 25,3420 00006 EXTEND
038642,001185: 25,3421 41700 DCS RDOT # FORM RDOTREF - RDOT
038643,001186: 25,3422 20001 DDOUBL
038644,001187: 25,3423 20001 DDOUBL
038645,001188: 25,3424 20001 DDOUBL # SCALE UP BY 8 FOR THIS PHASE.
038646,001189: 25,3425 61655 AD FX +3 # RDOTREF
038647,001190: 25,3426 00006 EXTEND
038648,001191: 25,3427 71656 MP FX +4 # F2
038649,001192: 25,3430 61654 AD FX +2 # RTOGO
038650,001193: 25,3431 20155 DAS MPAC # ADD F2(DADV1-DADVR)
038651,001194: 25,3432 30154 CA MPAC
038652,001195: 25,3433 55760 TS PREDANG
038653,001196: # L/D = LOD + (THETA- PREDANG)/ Y
038654,001197: 25,3434 06006 TC INTPRET
038655,001198:
038656,001199: 25,3435 45242 SR3 DSU
038657,001200: 25,3436 03702 THETAH
038658,001201: 25,3437 43014 BON BOFF
038659,001202: 25,3440 03305 GONEPAST
038660,001203: 25,3441 53466 GONEGLAD
038661,001204: 25,3442 03747 GONEBY
038662,001205: 25,3443 53451 HAVDNRNG
038663,001206: 25,3444 43145 DLOAD SET # SET GONEPAST IF GONEBY SET & LATCH IN -
038664,001207: 25,3445 13770 MAXRNG # DISPLAY = 9999.9 IF GONEBY PLACE
038665,001208: 25,3446 03065 GONEPAST
038666,001209: 25,3447 37716 STCALL DNRNGERR
038667,001210: 25,3450 53466 GONEGLAD
038668,001211:
038669,001212: 25,3451 03716 HAVDNRNG STORE DNRNGERR # = (PREDANG - THETA) /360
|
Page 880 |
038671,001214: 25,3452 77676 DCOMP # FALL SHORT IF NEG, OVERSHOOT IF POS
038672,001215: 25,3453 56204 BOVB DDV
038673,001216: 25,3454 57544 TCDANZIG # CLEAR OVFIND IF ON.
038674,001217: 25,3455 03653 FX # FX= DRANGE/D L/D = Y
038675,001218: 25,3456 40061 SL BOV
038676,001219: 25,3457 20206 5
038677,001220: 25,3460 53470 GOMAXL/D
038678,001221: 25,3461 40015 DAD BOV
038679,001222: 25,3462 03626 LOD
038680,001223: 25,3463 53470 GOMAXL/D
038681,001224: 25,3464 37634 STCALL L/D
038682,001225: 25,3465 53474 GLIMITER # (GO TO)
038683,001226:
038684,001227:
038685,001228: # GONEGLAD AND GOPOSMAX ENTRY POINTS FOR GLIMITER ...
038686,001229:
038687,001230: 25,3466 77745 GONEGLAD DLOAD # SET L/D = -LAD
038688,001231: 25,3467 13467 GONEGLAD # (ANY NEGATIVE NUMBER WILL DO)
038689,001232:
038690,001233: 25,3470 41234 GOMAXL/D RTB DMP # L/D = LAD SIGN(MPAC)
038691,001234: 25,3471 45761 SIGNMPAC
038692,001235: 25,3472 03624 LAD
038693,001236: 25,3473 03634 STORE L/D # AND FALL INTO GLIMITER SECTION
038694,001237:
038695,001238: 25,3474 45345 GLIMITER DLOAD DSU # IF GMAX/2-D POS, GO TO LIMITL/D
038696,001239: 25,3475 15162 GMAX/2
038697,001240: 25,3476 03640 D
038698,001241: 25,3477 43244 BPL DAD # IF GMAX -D NEG, GO TO GOPOSLAD
038699,001242: 25,3500 53524 LIMITL/D
038700,001243: 25,3501 15162 GMAX/2
038701,001244: 25,3502 41240 BMN DMP
038702,001245: 25,3503 53521 GOPOSLAD
038703,001246: 25,3504 15264 2HS
038704,001247: 25,3505 41325 PDDL DMP # 2HS(GMAX-D) INTO PD
038705,001248: 25,3506 03654 LEQ
038706,001249: 25,3507 15334 1/GMAX
038707,001250: 25,3510 41215 DAD DMP
038708,001251: 25,3511 03624 LAD
038709,001252: 25,3512 56325 PDDL DDV # 2HS(GMAX-D) (LEQ/GMAX+LAD) INTO PD
038710,001253: 25,3513 15266 2HSGMXSQ
038711,001254: 25,3514 03622 VSQUARE
038712,001255: 25,3515 75415 DAD SQRT # XLIM = SQRT(PD+(2HSGMAX/V)SQ)
038713,001256: 25,3516 51015 DAD BPL # IF RDOT+XLIM POS, GO TO LIMITL/D
038714,001257: 25,3517 03700 RDOT
038715,001258: 25,3520 53524 LIMITL/D
038716,001259:
038717,001260: 25,3521 77745 GOPOSLAD DLOAD
038718,001261: 25,3522 03624 LAD
038719,001262: 25,3523 03634 STOREL/D STORE L/D
038720,001263:
|
Page 881 |
038722,001265: 25,3524 77745 LIMITL/D DLOAD
038723,001266: 25,3525 03634 L/D
038724,001267: 25,3526 17636 STODL L/D1
038725,001268: 25,3527 03622 VSQUARE
038726,001269:
038727,001270: 25,3530 77614 BON # NO LATERAL CONTROL IF PAST TARGET
038728,001271: 25,3531 03305 GONEPAST
038729,001272: 25,3532 53564 L355
038730,001273: 25,3533 43205 DMP DAD # Y= KLAT VSQUARE + LATBIAS
038731,001274: 25,3534 03632 KLAT
038732,001275: 25,3535 15244 LATBIAS # Y INTO PD
038733,001276: 25,3536 51525 L350 PDDL ABS # IF ABS(L/D)-L/DCMINR NEG, GO TO L353
038734,001277: 25,3537 03634 L/D
038735,001278: 25,3540 50025 DSU BMN
038736,001279: 25,3541 03630 L/DCMINR
038737,001280: 25,3542 53551 L353
038738,001281: 25,3543 75345 DLOAD SIGN # IF K2ROLL LATANG NEG, GO TO L357
038739,001282: 25,3544 03676 LATANG
038740,001283: 25,3545 03644 K2ROLL
038741,001284: 25,3546 71240 BMN DLOAD
038742,001285: 25,3547 53627 L357
038743,001286: 25,3550 41542 SR1 PUSH # Y = Y/2
038744,001287: 25,3551 75345 L353 DLOAD SIGN # IF LATANG SIGN(K2ROLL)-Y POS, SWITCH
038745,001288: 25,3552 03676 LATANG
038746,001289: 25,3553 03644 K2ROLL
038747,001290: 25,3554 77625 DSU
038748,001291: 25,3555 71240 BMN DLOAD
038749,001292: 25,3556 53564 L355
038750,001293: 25,3557 03644 K2ROLL
038751,001294: 25,3560 57414 BONCLR DCOMP # IF NOSWITCH =1, K2ROLL= K2ROLL
038752,001295: 25,3561 03210 NOSWITCH
038753,001296: 25,3562 53564 L355
038754,001297: 25,3563 03644 STORE K2ROLL # K2ROLL = -K2ROLL
038755,001298:
038756,001299: 25,3564 56345 L355 DLOAD DDV # ROLLC = ACOS( (L/D1) / LAD)
038757,001300: 25,3565 03636 L/D1
038758,001301: 25,3566 03624 LAD # MPAC SET TO +-1 IF OVERFLOW***
038759,001302: 25,3567 65542 SR1 ACOS
038760,001303: 25,3570 43165 SIGN CLEAR
038761,001304: 25,3571 03644 K2ROLL
038762,001305: 25,3572 03270 NOSWITCH
038763,001306: 25,3573 03316 STORE ROLLC
038764,001307:
038765,001308: 25,3574 77776 ENDEXIT EXIT
038766,001309:
038767,001310: 25,3575 34754 OVERNOUT CAF ENDSPBIT # ENTRYDSP = 92D BIT13
038768,001311: 25,3576 70102 MASK CM/FLAGS
038769,001312: 25,3577 00006 EXTEND
038770,001313: 25,3600 13604 BZF NODISKY # OMIT DISPLAY.
|
Page 882 |
038772,001315: 25,3601 31122 CA ENTRYVN # ALL ENTRY DISPLAYS ARE DONE HERE.
038773,001316: 25,3602 04636 TC BANKCALL
038774,001317: 25,3603 20724 CADR REGODSPR # NO ABORT IF DISKY IN USE
038775,001318:
038776,001319: 25,3604 00004 NODISKY INHINT
038777,001320: 25,3605 10067 CCS NEWJOB # PROTECT READACCS GRP 5, IF SIDETRACKED.
038778,001321: 25,3606 05152 TC CHANG1
038779,001322: 25,3607 04655 SERVNOUT TC POSTJUMP # ( COME HERE FROM P67.3)
038780,001323: 25,3610 77143 CADR SERVEXIT # AND END AVERAGEG JOB VIA ENDOFJOB.
038781,001324:
|
Page 883 |
038783,001326:
038784,001327: # DISPLAY WHEN V IS LESS THAN VQUIT.
038785,001328:
038786,001329: 25,3611 77776 STEEROFF EXIT
038787,001330: 25,3612 04606 TC E7SETTER
038788,001331:
038789,001332: 25,3613 35055 CA PRIO16 # 2 LESS THAN NTRYPRIO.
038790,001333: 25,3614 05121 TC NOVAC
038791,001334: 25,3615 E6,1661 EBANK= AOG # ANY EB HERE
038792,001335: 25,3615 02511 54066 2CADR P67.1 # START UP REMAINDER OF P67
038793,001336:
038794,001337: # RTOGO LAT LONG
038795,001338: # XXXX.X NM XXX.XX DEG XXX.XX DEG
038796,001339:
038797,001340: 25,3617 05362 TC 2PHSCHNG # INHINT/RELINT DONE.
038798,001341: 25,3620 00414 OCT 00414 # 4.41 RESTART FOR P67.1 DISPLAY JOB.
038799,001342: 25,3621 10035 OCT 10035 # SERVICER 5.3 RESTART.
038800,001343:
038801,001344: 25,3622 01,2201 4P41SPT1 = 4.41SPOT
038802,001345: 25,3622 01,2250 5P3SPT15 = 5.3SPOT
038803,001346: 25,3622 33626 CA P67.2CAD # HEREAFTER, DO LAT, LONG.
038804,001347: 25,3623 55645 TS GOTOADDR
038805,001348:
038806,001349: 25,3624 06006 TC INTPRET
038807,001350: 25,3625 77650 GOTO
038808,001351: 25,3626 54532 P67.2CAD P67.2 # CONTINUE FOR LAT, LONG THIS TIME.
038809,001352:
038810,001353: 25,3627 75345 L357 DLOAD SIGN # L/D = L/DCMINR SIGN(L/D)
038811,001354: 25,3630 03630 L/DCMINR
038812,001355: 25,3631 03634 L/D
038813,001356: 25,3632 37636 STCALL L/D1
038814,001357: 25,3633 53564 L355 # (GO TO)
038815,001358:
|
Page 884 |
038817,001360:
038818,001361: # TABLE USED FOR SUB-ORBITAL REFERENCE TRAJECTORY CONTROL.
038819,001362:
038820,001363: 25,3634 00474 VREFER DEC .019288 # REFERENCE VELOCITY SCALED V/51532.3946
038821,001364: 25,3635 01235 DEC .040809 # 13 POINTS ARE STORED AS THE INDEPENDENT
038822,001365: 25,3636 02337 DEC .076107 # VARIABLE AND THEN SIX 13 POINT FUNCTIONS
038823,001366: 25,3637 03721 DEC .122156 # OF V ARE STORED CONSECUTIVELY
038824,001367: 25,3640 05230 DEC .165546
038825,001368: 25,3641 06213 DEC .196012
038826,001369: 25,3642 10550 DEC .271945
038827,001370: 25,3643 11717 DEC .309533
038828,001371: 25,3644 13314 DEC .356222
038829,001372: 25,3645 14736 DEC .404192
038830,001373: 25,3646 16255 DEC .448067
038831,001374: 25,3647 16457 DEC .456023
038832,001375: 25,3650 25570 DEC .67918 # HIGH VELOCITY FOR SAFETY
038833,001376:
038834,001377: 25,3651 77526 DEC -.010337 # DRANGE/DA SCALED DRDA/(2700/805)
038835,001378: 25,3652 77360 DEC -.016550
038836,001379: 25,3653 77106 DEC -.026935
038837,001380: 25,3654 76516 DEC -.042039
038838,001381: 25,3655 76071 DEC -.058974
038839,001382: 25,3656 75570 DEC -.070721
038840,001383: 25,3657 74661 DEC -.098538
038841,001384: 25,3660 70657 DEC -.223611
038842,001385: 25,3661 66352 DEC -.298148
038843,001386: 25,3662 66352 DEC -.298148
038844,001387: 25,3663 54557 DEC -.602557
038845,001388: 25,3664 40000 DEC -.99999
038846,001389: 25,3665 40000 DEC -.99999
038847,001390:
038848,001391: 25,3666 77635 DEC -.0478599 B-3 # -DRANGE/DRDOT
038849,001392: 25,3667 77563 DEC -.0683663 B-3 # SCALED ((2VS/8 2700) DR/DRDOT)
038850,001393: 25,3670 77354 DEC -.1343468 B-3
038851,001394: 25,3671 76712 DEC -.2759846 B-3
038852,001395: 25,3672 76066 DEC -.4731437 B-3
038853,001396: 25,3673 75322 DEC -.6472087 B-3
038854,001397: 25,3674 73237 DEC -1.171693 B-3
038855,001398: 25,3675 72104 DEC -1.466382 B-3
038856,001399: 25,3676 70301 DEC -1.905171 B-3
038857,001400: 25,3677 65635 DEC -2.547990 B-3
038858,001401: 25,3700 57311 DEC -4.151220 B-3
038859,001402: 25,3701 50575 DEC -5.813617 B-3
038860,001403: 25,3702 50575 DEC -5.813617 B-3
038861,001404:
|
Page 885 |
038863,001406: 25,3703 74443 DEC -.0134001 B3 # RDOTREF SCALED (8 RDT/2VS)
038864,001407: 25,3704 74333 DEC -.013947 B3
038865,001408: 25,3705 74433 DEC -.013462 B3
038866,001409: 25,3706 74763 DEC -.011813 B3
038867,001410: 25,3707 75432 DEC -.0095631 B3
038868,001411: 25,3710 75735 DEC -.00806946 B3
038869,001412: 25,3711 76200 DEC -.006828 B3
038870,001413: 25,3712 75735 DEC -.00806946 B3
038871,001414: 25,3713 75140 DEC -.0109791 B3
038872,001415: 25,3714 74075 DEC -.0151496 B3
038873,001416: 25,3715 73312 DEC -.0179817 B3
038874,001417: 25,3716 73732 DEC -.0159061 B3
038875,001418: 25,3717 73732 DEC -.0159061 B3
038876,001419:
038877,001420: 25,3720 00026 DEC .00137037 # 3.7 RTOGO SCALED RTOGO/2700
038878,001421: 25,3721 00077 DEC .00385185 # 10.4
038879,001422: 25,3722 00217 DEC .00874074 # 23.6
038880,001423: 25,3723 00431 DEC .017148
038881,001424: 25,3724 00712 DEC .027926
038882,001425: 25,3725 01136 DEC .037
038883,001426: 25,3726 02015 DEC .063296
038884,001427: 25,3727 02374 DEC .077889
038885,001428: 25,3730 03123 DEC .098815
038886,001429: 25,3731 04051 DEC .127519
038887,001430: 25,3732 05767 DEC .186963
038888,001431: 25,3733 07476 DEC .238148
038889,001432: 25,3734 11324 DEC .294185185
038890,001433:
038891,001434: 25,3735 76272 DEC -.051099 # -AREF/805
038892,001435: 25,3736 75472 DEC -.074534
038893,001436: 25,3737 74604 DEC -.101242
038894,001437: 25,3740 74210 DEC -.116646
038895,001438: 25,3741 74052 DEC -.122360
038896,001439: 25,3742 73735 DEC -.127081
038897,001440: 25,3743 73217 DEC -.147453
038898,001441: 25,3744 73013 DEC -.155528
038899,001442: 25,3745 73155 DEC -.149565
038900,001443: 25,3746 74151 DEC -.118509
038901,001444: 25,3747 76703 DEC -.034907
038902,001445: 25,3750 77575 DEC -.007950
038903,001446: 25,3751 77575 DEC -.007950
038904,001447:
|
Page 886 |
038906,001449: 25,3752 00112 DEC .004491 # DRANGE/D L/D SCALED Y/2700
038907,001450: 25,3753 00204 DEC .008081
038908,001451: 25,3754 00407 DEC .016030
038909,001452: 25,3755 01113 DEC .035815
038910,001453: 25,3756 02161 DEC .069422
038911,001454: 25,3757 03260 DEC .104519
038912,001455: 25,3760 03717 DEC .122
038913,001456: 25,3761 05411 DEC .172407
038914,001457: 25,3762 10057 DEC .252852
038915,001458: 25,3763 13476 DEC .363148
038916,001459: 25,3764 20324 DEC .512963
038917,001460: 25,3765 21677 DEC .558519
038918,001461: 25,3766 21677 DEC .558519 # END OF STORED REFERENCE
038919,001462:
|
Page 887 |
038921,001464:
038922,001465: # REENTRY CONSTANTS.
038923,001466:
038924,001467: # DEFINED BY EQUALS
038925,001468:
038926,001469: 25,3767 4777 DEC15 = LOW4
038927,001470: # GAMMAL1 = 22D
038928,001471:
038929,001472: 25,3767 16631 06755 MAXRNG 2OCT 1663106755 # DNRNGERR = 9999.9 IF GONEPAST=1
038930,001473:
038931,001474: 26,2000 SETLOC REENTRY1
038932,001475: 26,2000 BANK
038933,001476:
038934,001477: 26,3150 COUNT* $$/ENTRY
038935,001478:
038936,001479: 26,3150 26,3343 BARELY1 = NEARONE # COMMON TO BOTH DISK,DANCE.DEFND IN TFF
038937,001480: # 1BITDP COMMON TO BOTH DISK AND DANCE. DEFND IN VECPOINT.
038938,001481:
038939,001482: 26,3150 02525 1/12TH DEC .083333 # DP 1/12 USES HI WORD IN 1/3 BELOW
038940,001483:
038941,001484: 26,3151 12525 12525 1/3RD 2DEC .3333333333 # DP 1/3
038942,001485:
038943,001486: 26,3153 34,3770 1/16TH = DP2(-4)
038944,001487:
038945,001488: # BELOW: VS = VSAT = 25766.1973 FT/SEC
038946,001489:
038947,001490: # RE = 21,202,900 FEET
038948,001491:
038949,001492: 26,3153 04631 23146 LEWD1 2DEC .15
038950,001493:
038951,001494: 26,3155 03146 14632 POINT1 2DEC .1
038952,001495:
038953,001496: 26,3157 76314 71462 DLEWD0 2DEC -.05 # -.05
038954,001497:
038955,001498: 26,3161 05075 16051 GMAX/2 2DEC .16 # 8 GS / 2
038956,001499:
038957,001500: 26,3163 26,3335 3ZEROS EQUALS HI6ZEROS
038958,001501:
038959,001502: 26,3163 07777 00000 NEAR1/4 2OCT 0777700000 # 1/4 LESS 1 BIT IN UPPER PART.
038960,001503:
038961,001504: 26,3165 00236 36763 C18 2DEC .0097026346 # 500/2VS
038962,001505:
038963,001506: 26,3167 00204 11303 Q7FKDMIN 2DEC .0080745342 # 6.5/805 (Q7F +KDMIN) = 6 + .5)
038964,001507:
038965,001508: 26,3171 34,3770 C1/16 = DP2(-4)
038966,001509:
038967,001510: 26,3171 05260 05572 Q3 2DEC .167003132 # .07 2VS/21600
038968,001511:
038969,001512: 26,3173 12343 21616 Q5 2DEC .326388889 # .3 23500/21600
038970,001513:
|
Page 888 |
038972,001515:
038973,001516: 26,3175 01073 31515 Q6 2DEC .0349 # 2 DEG, APPROX 820/23500
038974,001517:
038975,001518: 26,3177 00172 03571 Q7F 2DEC .0074534161 # 6/805 (VALUE OF Q7 IN FIXED MEM.)
038976,001519:
038977,001520: 26,3201 26,3333 Q19 = HALVE # Q19 = .5
038978,001521:
038979,001522: 26,3201 05136 32046 Q21 2DEC .1620370370 # 3500/21600
038980,001523:
038981,001524: 26,3203 75031 40775 Q22 2DEC -.092222222 # -1992/21600
038982,001525:
038983,001526: 26,3205 13132 33062 VLMIN 2DEC .34929485 # 18000/2 VS
038984,001527:
038985,001528: 26,3207 26,3325 VMIN = FOURTH # (VS/2) / 2VS
038986,001529:
038987,001530: 26,3207 00160 05104 C12 2DEC .00684572901 # 32 28500/(21202900 2 PI)
038988,001531:
038989,001532: 26,3211 14631 23146 1/KB1 2DEC .4 # 1 / 2.5
038990,001533:
038991,001534: 26,3213 74015 46560 -1/KB2 2DEC -.0077621078 B4 # - 1/(.0025 2 VS) EXP +4
038992,001535:
038993,001536: 26,3215 00475 35746 VQUIT 2DEC .019405269 # 1000 /2VS
038994,001537:
038995,001538: 26,3217 10262 02622 C20 2DEC .26086957 # 210/805 90 DEG MAX ROLL IF ABOVE C20
038996,001539:
038997,001540: 26,3221 05441 14412 C21 2DEC .17391304 # 140/805
038998,001541:
038999,001542: 26,3223 00022 36641 25NM 2DEC .0011574074 # 25/21600 (25 NAUT MILES)
039000,001543:
039001,001544: 26,3225 01003 06315 K1D 2DEC .0314453125 # =C16 805/256 = .01 805/256
039002,001545:
039003,001546: 26,3227 63073 73236 K2D 2DEC -.402596836 # -C17 2VS/256 = -.002 2VS/256
039004,001547:
039005,001548: 26,3231 32047 24367 KVSCALE 2DEC .81491944 # 12800/(2 VS .3048)
039006,001549:
039007,001550: 26,3233 37200 05636 KASCALE 2DEC .97657358 # 5.85 16384/(4 .3048 100 805)
039008,001551:
039009,001552: 26,3235 00046 13137 KTETA 2DEC* .383495203 E2 B-14* # 1000 2PI/16384(163.84)
039010,001553:
039011,001554: 26,3237 00017 30730 KT1 2DEC* .157788327 E2 B-14* # RE(2PI)/2 VS(16384) 163.84
039012,001555:
039013,001556: 26,3241 00040 30447 .05G 2DEC .002 # .05/25
039014,001557:
039015,001558: 26,3243 00000 17565 LATBIAS 2DEC .00003 # APPRX .5 NM/ 4(21600/2 PI)
039016,001559:
039017,001560: 26,3245 01727 20103 KWE 2DEC .120056652 B-1
039018,001561:
039019,001562: 26,3247 00121 17460 KACOS 2DEC .004973592 # 1/32(2PI)
039020,001563:
039021,001564: 26,3251 00400 00000 CHOOK 2DEC 1 B-6 # .25/16
039022,001565: 26,3253 01252 25253 1/24TH 2DEC .0833333333 B-1
039023,001566:
|
Page 889 |
039025,001568: 26,3255 24365 30244 CH1 2DEC .32 B1 # 16 CH1/25 = 16 (1) /25
039026,001569:
039027,001570: 26,3257 77152 51354 KC3 2DEC -.0247622232 # -(4 VS VS/ 2 PI 805 RE)
039028,001571:
039029,001572: 26,3261 00336 21610 VRCONT 2DEC .0135836886 # 700/2 VSAT
039030,001573:
039031,001574: 26,3263 26,3333 HALVE EQUALS HIDPHALF
039032,001575: 26,3263 26,3325 FOURTH EQUALS HIDP1/4
039033,001576:
039034,001577: 26,3263 26,3333 1/GMAX EQUALS HALVE # 4/GMAX = 4 / 8
039035,001578: 26,3263 00433 02775 2HS 2DEC .0172786611 # 2 28500 25 32.2/(4 VS VS)
039036,001579:
039037,001580: 26,3265 00000 20017 2HSGMXSQ 2DEC .0000305717 # (2 28500 8 32.2/ 4 VS VS)SQ
039038,001581:
039039,001582: 26,3267 77765 70243 C001 2DEC -.000625 # -(4/25)/256 LEQ/D0 CONST
039040,001583:
039041,001584: 26,3271 31463 06315 POINT8 2DEC .8
039042,001585:
039043,001586: 26,3273 00541 33575 2C1HS 2DEC .0215983264 # 2 1.25 28500 805/(2 VS)SQ
039044,001587:
039045,001588: 26,3275 00146 14632 PT1/16 2DEC .1 B-4
039046,001589:
039047,001590: 26,3277 00052 30013 1/K44 2DEC .00260929464 # 2 VS/19749550
039048,001591:
039049,001592: 26,3301 20411 03041 VFINAL 2DEC .51618016 # 26600/2 VS
039050,001593:
039051,001594: 26,3303 20610 10513 VFINAL1 2DEC .523942273 # = 27000 / 2 VS
039052,001595:
039053,001596: 26,3305 11473 02355 1/KA1 2DEC .30048077 # 25/(1.3 64)
039054,001597:
039055,001598: 26,3307 00203 02234 KA2 2DEC .008 # .2/25
039056,001599:
039057,001600: 26,3311 16237 00146 KA3 2DEC .44720497 # = 90 4/805
039058,001601:
039059,001602: 26,3313 01456 03450 KA4 2DEC .049689441 # 40/805
039060,001603:
039061,001604: 26,3315 01727 01217 KALIM 2DEC .06 # 1.5/25
039062,001605:
039063,001606: 26,3317 26,3343 Q7MIN = NEARONE # 805/805 (DISABLE FACTOR CALC)
039064,001607: 26,3317 56232 72332 -HSCALED 2DEC -.55305018 # -28500/2 VS
039065,001608:
039066,001609: 26,3321 77000 43741 -KSCALE 2DEC -.0312424837 # -805/VS
039067,001610:
039068,001611: 26,3323 36702 21727 COS15 2DEC .965
039069,001612:
039070,001613: 26,3325 26,3150 LATSLOPE EQUALS 1/12TH
039071,001614:
039072,001615: # ... END OF RE-ENTRY CONSTANTS ...
039073,001616:
End of include-file REENTRY_CONTROL.agc. Parent file is MAIN.agc