Source Code
These source-code files are part of a reconstructed copy of Skylark 048, the
Block II Command Module (CM) Apollo Guidance Computer (AGC) software for the
Skylab-2, Skylab-3, Skylab-4, and Apollo-Soyuz Test Project missions.
They have been created via disassembly of binary dumps of the original core rope memory modules actually flown on Skylab-2, part numbers 2010802-541, 2010802-551, 2010802-561, 2010802-571, 2010802-581, and 2010802-591. Access to these modules was provided by the New Mexico Museum of Space History, who we are much indebted to. The source code for the Apollo 15, 16, and 17 software, Artemis 072, was used as a starting point. Heavy use was made of TRW 4900.5-244, Programmed Guidance Equations for Skylark Command Module Earth Orbital Program, dated 14 February 1972. This document contains pseudocode of essentially all of Skylark, using original program labels which have been copied for this source reconstruction. Since only binary dumps (rather than listings) of Skylark are available as source material, all comments and labels are approximate. They have been taken from the Programmed Guidance Equations or other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing. |
033446,000002: ## Copyright: Public domain.
033447,000003: ## Filename: P61-P67.agc
033448,000004: ## Purpose: A section of Skylark revision 048.
033449,000005: ## It is part of the source code for the Apollo Guidance Computer (AGC)
033450,000006: ## for Skylab-2, Skylab-3, Skylab-4, and ASTP. No original listings of
033451,000007: ## this software are available; instead, this file was created via
033452,000008: ## disassembly of dumps of the core rope modules actually flown on
033453,000009: ## Skylab-2. Access to these modules was provided by the New Mexico
033454,000010: ## Museum of Space History.
033455,000011: ## Assembler: yaYUL
033456,000012: ## Contact: Ron Burkey <info@sandroid.org>.
033457,000013: ## Website: www.ibiblio.org/apollo/index.html
033458,000014: ## Mod history: 2023-09-04 MAS Created from Artemis 072.
033459,000015: ## 2024-03-05 MAS Updated for Skylark 48.
033460,000016:
033461,000017:
033462,000018: # PROGRAM: P61
033463,000019: # MOD NO.: 0 MAR. 13, 1967
033464,000020: # MOD BY: R. HIRSCHKOP
033465,000021: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 22 JUN 67 RESTARTS.
033466,000022: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 17 JAN 68 COLOSSUS GSOP CHANGES.
033467,000023: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 8 MAY 68 DELETE CMSM MANEUVER (PCR 50)
033468,000024: # MOD NO: 4 MOD BY: RR BAIRNSFATHER DATE: 1 JUL 69 PCR 787: TICK TTE
033469,000025: # FUNCTION: TO CALCULATE AND DISPLAY EMS INITIALIZATION DATA
033470,000026: # CALLING SEQUENCE- BY V37
033471,000027: # EXIT- TO P62
033472,000028: # SUBROUTINE CALLS- S61.1 , S61.3 , GOFLASH , FLAGUP , R02BOTH
033473,000029: # ERASABLE INITIALIZATION:
033474,000030: # EMSALT (-29) M .05G ALTITUDE ABOVE FISCHER ELLIPSOID PAD LOADED.
033475,000031: # ALFAPAD /180 HYPERSONIC CM TRIM ANGLE OF ATTACK PAD LOADED
033476,000032: # OUTPUT: THE FOLLOWING REGISTERS ARE WRITTEN IN FOR USE BY DISPLAYS
033477,000033: # GMAX 100 GMAX (-14) G,S MAXIMUM ACCELERATION
033478,000034: # VPRED (-7) M/CS PREDICTED VELOCITY AT 400K FT
033479,000035: # GAMMAEI GAMMA/360 PREDICTED GAMMA AT 400K FT
033480,000036: # RTGO THETAH/360 RANGE ANGLE TO SPLASH FROM EMSALT EMSALT IS PAD LOADED
033481,000037: # VIO (-7) M/CS INERTIAL VELOCITY AT EMSALT EMSALT IS PAD LOADED
033482,000038: # TTE (-28) CS TIME TO EMSALT EMSALT IS PAD LOADED
033483,000039: # LAT(SPL) /360 TARGET LOCATION LEFT BY DSKY
033484,000040: # LNG(SPL) /360 TARGET LOCATION LEFT BY DSKY
033485,000041: # HEADSUP (0) +1 = LIFT DOWN, -1 = LIFT UP LEFT BY DSKY
033486,000042: # DEBRIS: SEE SUBROUTINES.
033487,000043:
033488,000044: 26,2000 SETLOC P60S
033489,000045: 26,2000 BANK
033490,000046:
033491,000047: 26,2103 E6,1712 EBANK= AOG
033492,000048:
033493,000049: 26,2103 COUNT* $$/P61
033494,000050:
033495,000051: 26,2103 34764 P61 CA BIT14 # EXTENDED VERB SHOULD BE FREE THIS CLOSE
033496,000052: 26,2104 55237 TS EXTVBACT # TO V37
033497,000053: # LOCK OUT EXTENDED VERBS SO CAN USE TFF
033498,000054: # ROUTINES.EXT VERB ERASE IS USED
033499,000055:
033500,000056: 26,2105 45001 CS ONE # REMOVE IF HEADSUP EVER ON UPLINK DATA
033501,000057: 26,2106 55757 TS HEADSUP # PRELOAD
033502,000058:
033503,000059: 26,2107 02414 TC S61.1 # CHECK STATE VECTOR AND IMU ORIENTATION
033504,000060: # RV 60GENRET. DOES PHASCHNG, GROUP 4.
033505,000061:
033506,000062: 26,2110 35047 CA V06N61 # LAT(SPL) LNG(SPL) HEADSUP
033507,000063: # XXX.XX DEG XXX.XX DEG XXXXX.
033508,000064: 26,2111 05553 TC VNFLASHR
033509,000065: 26,2112 02116 TC P61.4
033510,000066: 26,2113 05415 P61.3 TC PHASCHNG
033511,000067: 26,2114 00014 OCT 00014
033512,000068:
033513,000069: 26,2115 05220 TC ENDOFJOB
033514,000070:
033515,000071: 26,2116 22007 P61.4 ZL
033516,000072: 26,2117 11757 CCS HEADSUP # C(HEADSUP)= +1/-1
033517,000073: 26,2120 34764 CA BIT14 # IF HEADSUP POS,ROLLC =180 DEG.(LIFT DWN)
033518,000074: 26,2121 12122 NOOP # IF HEADSUP NEG,ROLLC =0 (LIFT UP)
033519,000075: 26,2122 53747 DXCH ROLLC # ROLLC IS USED BY S62.3: GIM ANG AT .05G
033520,000076:
033521,000077: 26,2123 34764 AGIN,MON CA BIT14 # LOCK OUT EXTENDED VERBS.(REDUNDANT ON
033522,000078: 26,2124 55237 TS EXTVBACT # INITIAL PASS)
033523,000079:
033524,000080: 26,2125 06006 TC INTPRET
033525,000081: 26,2126 77745 NEWRNVN DLOAD
033526,000082: 26,2127 01036 PIPTIME # SAVE TIME OF RN,VN TO DETERMINE IF AN
033527,000083: 26,2130 37651 STCALL MM # UPDATE HAS OCCURRED
033528,000084: 26,2131 52063 STARTEN1 # INITIALIZE
033529,000085: 26,2132 43175 VLOAD CLEAR # 'TTE' WILL BE DECREMENTED UNTIL
033530,000086: 26,2133 01022 RN
033531,000087: 26,2134 03274 .05GSW # THE DRAG > 0.05 G .
033532,000088: # .05GSW SET =1 BY FRESH START.
033533,000089:
033534,000090: 26,2135 02210 STORE RONE
033535,000091: 26,2136 77656 UNIT
033536,000092: 26,2137 26156 STOVL URONE
033537,000093: 26,2140 01030 VN
033538,000094: 26,2141 02216 STORE VONE
033539,000095: 26,2142 53435 VXV UNIT
033540,000096: 26,2143 02156 URONE
033541,000097: 26,2144 03502 STORE UNI
033542,000098: 26,2145 45345 DUMPP61 DLOAD DSU
033543,000099: 26,2146 03651 MM # INITIAL VALUE OF PIPTIME
033544,000100: 26,2147 01036 PIPTIME
033545,000101: 26,2150 45040 BMN CALRB
033546,000102: 26,2151 54126 NEWRNVN # UPDATED... GO TRY AGAIN
033547,000103: 26,2152 54520 S61.2 # GET DISPLAY DATA FOR N60 AND N63
033548,000104: # AND RETURN IN BASIC, BELOW.
033549,000105: 26,2153 05542 P61.1 TC CLEARMRK
033550,000106: 26,2154 35046 CA V06N60 # GMAX VPRED GAMMAEI
033551,000107: # XXX.XX G XXXXX. FPS XXX.XX DEG
033552,000108: 26,2155 05550 TC VNFLASH
033553,000109:
033554,000110: # 'TICKTTE' DECREMENTS 'TTE' DISPLAY NOUN N63 AT A 2 SECOND RATE. 'TICKTTE' IS LOCATED IN 'SERVICER' AND
033555,000111: # OPERATES ONLY DURING P61 THROUGH P63. THUS N63 IS 'ON CALL' & ON ENTRY DOWNLIST THROUGH P63.
033556,000112: # 'TICKTTE' WILL GIVE PROPER ANSWER IN EVENT OF RESTART OR A RECYCLE VIA V32.
033557,000113:
033558,000114: 26,2156 32274 CA V16N63 # RTGO VIO TTE
033559,000115: # XXXX.X NM XXXXX. FPS XXBXX M,S
033560,000116: 26,2157 04647 TC BANKCALL
033561,000117: 26,2160 20623 CADR GOFLASH
033562,000118: 26,2161 04103 TC GOTOPOOH
033563,000119: 26,2162 02164 TC +2
033564,000120: 26,2163 02123 TC AGIN,MON # REDO CONIC CALC. ASSUME EXT VB INACTIVE
033565,000121:
033566,000122: # .... THEN FALL INTO P62
033567,000123:
033568,000124:
033569,000125: # PROGRAM- P62
033570,000126: # MOD NO.- 0 MAR. 13, 1967
033571,000127: # MOD BY- R. HIRSCHKOP
033572,000128: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 67
033573,000129: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 22 JUN 67 RESTARTS.
033574,000130: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 17 JAN 68 COLOSSUS GSOP CHANGES.
033575,000131: # MOD NO: 4 MOD BY: RR BAIRNSFATHER DATE: 8 MAY 68 MOVE START OF DESIRED GIMBAL CALC.
033576,000132: # FUNCTION- 1) TO NOTIFY CREW WHEN GNC SYSTEM IS PREPARED FOR CM/SM SEPARATION
033577,000133: # 2) TO ORIENT THE CM TO THE CORRECT ATTITUDE FOR ATMOSPHERIC ENTRY
033578,000134: # CALLING SEQUENCE- BY V37 OR DIRECTLY FROM P61
033579,000135: # EXIT- TO P63
033580,000136: # ERASABLE INITIALIZATION:
033581,000137: # ALFAPAD LEFT BY PAD LOAD
033582,000138: # LADPAD LEFT BY PAD LOAD
033583,000139: # LODPAD LEFT BY PAD LOAD
033584,000140: # LAT(SPL) (MAY BE CHANGED BELOW) LEFT BY DSKY, VIA P61
033585,000141: # LNG(SPL) (MAY BE CHANGED BELOW) LEFT BY DSKY, VIA P61
033586,000142: # HEADSUP (MAY BE CHANGED BELOW) LEFT BY DSKY, VIA P61
033587,000143: # SUBROUTINE CALLS: NEWMODEX , S61.1 , CM/DAPIC , CM/DAPON , R02BOTH , GOPERF1 , GOFLASH , GODSPR
033588,000144:
033589,000145: 26,2164 COUNT* $$/P62
033590,000146:
033591,000147: 26,2164 05357 +2 TC NEWMODEX # MODE CHANGE IF ENTERED FROM P61
033592,000148: 26,2165 00076 MM 62 B-14 # MODE CHANGE AUTOMATIC VIA V 37.
033593,000149: 26,2166 35001 CA ONE
033594,000150: 26,2167 54332 TS DNLSTCOD
033595,000151:
033596,000152: 26,2170 02414 P62 TC S61.1 # CHECK STATE VECTOR AND IMU ORIENTATION.
033597,000153:
033598,000154: 26,2171 06006 TC INTPRET
033599,000155: 26,2172 47131 SSP RTB
033600,000156: 26,2173 03356 POSEXIT
033601,000157: 26,2174 54251 P62.3 # CALCULATE DESIRED .05G GIMBAL ANGLES,
033602,000158: # WITHOUT DISPLAY.
033603,000159: 26,2175 41730 CM/DAPIC # START CM/POSE AND BODY RATE CALC
033604,000160:
033605,000161: # DOES 2PHSCHNG, OCT 40116, OCT 05024, OCT 13000.
033606,000162: # CM/DAPIC SETS EBANK = EBAOG
033607,000163: # AND RETURNS IN BASIC TO P62.2.
033608,000164: 26,2176 00006 P62.2 EXTEND
033609,000165: 26,2177 32300 DCA POSECADR # CONTINUE WITH CM/POSE AFTER AV G.
033610,000166: 26,2200 53054 DXCH AVEGEXIT
033611,000167:
033612,000168: 26,2201 32413 CAF OCT41 # REQUEST SEPARATION
033613,000169: 26,2202 04647 TC BANKCALL
033614,000170: 26,2203 21027 CADR GOPERF1R
033615,000171: 26,2204 04103 TC GOTOPOOH
033616,000172: 26,2205 02210 TC +3 # PROCEED
033617,000173: # NOTE: NODOFLAG WILL BE SET IN CM/DAPON. <<<
033618,000174: 26,2206 02201 TC -5 # ENTER
033619,000175: 26,2207 02113 TC P61.3 # FOR PHASCHNG AND ENDOFJOB.
033620,000176:
033621,000177: 26,2210 04666 +3 TC POSTJUMP
033622,000178: 26,2211 41651 CADR CM/DAPON # DISABLE RCS DAP, ENABLE ENTRY DAP AND
033623,000179: # DO ATTITUDE HOLD.
033624,000180:
033625,000181: # WILL IDLE UNTIL CM/POSE DOES ONE UPDATE.
033626,000182: # CM/DAPON DOES NO PHASCHNG.
033627,000183:
033628,000184: 26,2212 35047 P62.1 CA V06N61 # LAT(SPL) LNG(SPL) HEADSUP
033629,000185: # XXX.XX DEG XXX.XX DEG 0000X.
033630,000186:
033631,000187: # TERMINATE ATTITUDE HOLD. SET UP COMMANDS:
033632,000188: # ROLLC, ALFACOM, BETACOM. BEGIN MANUVER TO
033633,000189: # ENTRY ATTITUDE.
033634,000190:
033635,000191: 26,2213 04647 TC BANKCALL
033636,000192: 26,2214 20623 CADR GOFLASH
033637,000193: 26,2215 02212 TC -3
033638,000194: 26,2216 02220 TC +2
033639,000195: 26,2217 02212 TC -5
033640,000196:
033641,000197: 26,2220 05415 TC PHASCHNG
033642,000198: 26,2221 04024 OCT 04024 # USE ENTRYVN FOR DISPLAY BELOW.
033643,000199:
033644,000200: # EBANK WAS SET IN CM/DAPON TO EBAOG
033645,000201:
033646,000202: 26,2222 11757 CCS HEADSUP # C(HEADSUP) = +/- 1
033647,000203: 26,2223 34764 CA BIT14 # IF HEADSUP POS, ROLLC=180 DEG (LIFT DWN)
033648,000204: 26,2224 12225 NOOP # IF HEADSUP NEG, ROLLC=0 DEG (LIFT UP)
033649,000205: 26,2225 55746 TS ROLLC
033650,000206: 26,2226 31777 CA ALFAPAD # NOMINAL ALFATRIM PAD LOADED, NEG. NO.
033651,000207: 26,2227 22007 ZL
033652,000208: 26,2230 53635 DXCH ALFACOM # SET ALFACOM = ALFA TRIM, BETACOM=0
033653,000209:
033654,000210: 26,2231 35001 CA ONE # PERMITS EXDAP2 TO CHANGE FLAG TO +0
033655,000211: 26,2232 55760 TS P63FLAG # AS INDICATOR. STARTS UP P63.
033656,000212:
033657,000213: 26,2233 35040 CA V06N22 # SET UP DISPLAY FOR CDU DESIRED VALUES
033658,000214: 26,2234 55114 TS ENTRYVN # FROM ENTRY ATTITUDE CALC, THAT IS
033659,000215: # ALREADY GOING.
033660,000216: 26,2235 07710 TC UPFLAG # TURN ON ENTRY DISPLAY
033661,000217: 26,2236 00134 ADRES ENTRYDSP # ENTRYDSP = 92D BIT 13 FLAG 6
033662,000218: # SKIP
033663,000219: 26,2237 41731 CS CMDAPMOD # GO DIRECTLY TO P63 IF BODY ATTITUDE
033664,000220: 26,2240 75001 MASK ONE # IS SUCH THAT THE DELAY TASK: WAKEP62
033665,000221: 26,2241 00006 EXTEND # WILL BE OMITTED.
033666,000222: 26,2242 12271 BZF P63.1 # DISABLE GRP 4, GO TO ENDOFJOB.
033667,000223: # (IE, CONTINUE IF CMDAPMOD = -1, OR +0)
033668,000224: 26,2243 02255 TC P63
033669,000225:
033670,000226: # PUT JOB TO SLEEP UNTIL VEHICLE MANUVER HAS
033671,000227: # REDUCED ALFA TO +/-45 DEG. CONSIDER REMAINING
033672,000228: # 65 DEG (25 DEG IF ALFA NEG) TO ALFA TRIM TO
033673,000229: # OCCUR AT 3 DEG/SEC, AND TERMINATE P62 AT THAT
033674,000230: # TIME.
033675,000231: # TASK WAKEP62 IS CALLED FROM ENTRY DAP.
033676,000232:
033677,000233: 26,2244 35064 WAKEP62 CA PRIO13
033678,000234: 26,2245 05134 TC NOVAC
033679,000235: 26,2246 E6,1712 EBANK= AOG
033680,000236: 26,2246 02255 54066 2CADR P63
033681,000237:
033682,000238: 26,2250 05327 TC TASKOVER
033683,000239:
033684,000240: # EACH 2 SEC, CALCULATE GIMBAL ANGLES FOR ENTRY CON-
033685,000241: # DITIONS THAT WILL HOLD IF REORIENTATION WERE MADE
033686,000242: # AT PRESENT RN, VN. COME HERE FROM CM/POSE AND ALSO
033687,000243: # IN KEPLER PHASE OF ENTRY.
033688,000244:
033689,000245: 26,2251 52131 P62.3 SSP GOTO # SET RETURN ADDRESS SO THAT ROUTINE
033690,000246: 26,2252 00053 QPRET # GOES DIRECTLY TO ENTRY GUIDANCE EXIT
033691,000247: 26,2253 53573 ENDEXIT # THAT DOES ENTRY DISPLAY, GRP 5.
033692,000248: 26,2254 20272 S62.3 # PUT DESIRED CDU VALUES IN CPHI'S FOR
033693,000249: # N22 DISPLAY.
033694,000250:
033695,000251: # P63
033696,000252: # PROGRAM- P63
033697,000253: # MOD NO.- 0 MAR. 13, 1967
033698,000254: # MOD BY- R. HIRSCHKOP
033699,000255: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 22 JIN 67 RESTARTS.
033700,000256: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 14 JUL 67 REVISED RESTARTS
033701,000257: # FUNCTION- 1) TO INITIALIZE THE ENTRY EQUATIONS
033702,000258: # 2) TO CONTINUE TO HOLD THE CM TO THE CORRECT ATTITUDE WITH RESPECT TO THE ATMOSPHERE FOR
033703,000259: # THE ONSET OF ENTRY DECELERATION. ROLL ANGLE IS LIFT UP/DOWN AS SPECIFIED BY HEADSUP.
033704,000260: # 3) TO SENSE .05G
033705,000261: # CALLING SEQUENCE- DIRECTLY FROM P62
033706,000262: # EXIT- TO ENDOFJOB
033707,000263: # SUBROUTINE CALLS- NEWMODEX , GODSPR
033708,000264:
033709,000265: 26,2255 COUNT* $$/P63
033710,000266:
033711,000267: 26,2255 05357 P63 TC NEWMODEX
033712,000268: 26,2256 00077 MM 63 B-14
033713,000269:
033714,000270: # ARRIVE WITH EBANK = AOG.
033715,000271:
033716,000272: 26,2257 32276 CA ENTCADR # CONTINUE AT STARTENT AFTER CM/POSE.
033717,000273:
033718,000274: # AT END OF STARTENT, CHANGE ADDRESS IN GOTOADDR
033719,000275: # TO CONTINUE AT SCALEPOP THEREAFTER.
033720,000276:
033721,000277: 26,2260 55755 TS POSEXIT
033722,000278:
033723,000279: 26,2261 32275 CA V06N64 # G VI R TO SPLSH
033724,000280: # XXX.XX G XXXXX. FPS XXXX.X NM
033725,000281: 26,2262 55114 TS ENTRYVN # FOR DISPLAY CALL IN OVERNOUT.
033726,000282:
033727,000283: 26,2263 45001 CS ONE # IN CASE FLAG IS LEFT AT +1 BY DAP. THE
033728,000284: 26,2264 55760 TS P63FLAG # -1 ASSURES THAT EXO-ATM DAP WILL NOT
033729,000285: # CALL P63 OUT OF SEQUENCE IN P66.
033730,000286:
033731,000287: 26,2265 05415 TC PHASCHNG # THIS IS REQUIRED TO PRESERVE CLEANDSP
033732,000288: 26,2266 00004 OCT 00004 # RETURN IN EVENT OF AN EXTENDED VERB..
033733,000289:
033734,000290: 26,2267 04647 TC BANKCALL # FLUSH 'N22' DISPLAY, IF ON. (OMIT
033735,000291: 26,2270 20575 CADR CLEANDSP # DISPLAY DURING 'STARTENT' PASS.)
033736,000292:
033737,000293: 26,2271 05415 P63.1 TC PHASCHNG
033738,000294: 26,2272 00004 OCT 00004 # DISABLE. DISPLAY RESTARTED VIA ENTRY.
033739,000295:
033740,000296: 26,2273 05220 TC ENDOFJOB
033741,000297:
033742,000298: 26,2274 04077 V16N63 VN 1663
033743,000299: 26,2275 01500 V06N64 VN 0664
033744,000300: 26,2276 52000 ENTCADR CADR STARTENT
033745,000301: 26,2277 E7,1451 EBANK= RTINIT # TO CARY OVER INTO ENTRY STEERING.
033746,000302: 26,2277 03265 76067 POSECADR 2CADR CM/POSE
033747,000303:
033748,000304:
033749,000305: # PROGRAM- P64
033750,000306: # MOD NO.- 1 SEPT. 19, 1967
033751,000307: # MOD BY- R. HIRSCHKOP
033752,000308: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 8 MAY 68 REVISED COMMENTS FOR COLOSSUS
033753,000309: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 1 MAR '69 N74
033754,000310: # FUNCTION- 1. TO START ENTRY GUIDANCE AT .05G SELECTING ROLL ATTITUDE, CONSTANT DRAG LEVEL, AND
033755,000311: # DRAG THRESHOLD, KA , WHICH ARE KEYED TO THE .05G POINT.
033756,000312: # 2. SELECT FINAL PHASE P67 IF V < 27000 FPS WHEN .2G OCCURS.
033757,000313: # 3. ITERATE FOR UP-CONTROL SOLUTION P65 IF V > 27000 FPS AND IF ALTITUDE RATE AND DRAG
033758,000314: # LEVEL CONDITIONS ARE SATISFIED. ENTER P65 WHEN CONSTANT DRAG CONTROLLER HAS BROUGHT RANGE
033759,000315: # AS PREDICTED TO WITHIN 25 NM OF DESIRED RANGE.
033760,000316: # 4. SELECT FINAL PHASE P67 IF NO UP-CONTROL SOLUTION EXISTS WITH VL > 18000 FPS.
033761,000317: # CALLING SEQUENCE- BY RTB FROM REENTRY CONTROL
033762,000318: # EXIT- BACK TO REENTRY CONTROL
033763,000319: # SUBROUTINE CALLS- NEWMODEX
033764,000320:
033765,000321: 26,2000 SETLOC P60S1
033766,000322: 26,2000 BANK
033767,000323:
033768,000324: # THIS DISPLAY IS CALLED EACH PASS THROUGH STEERING. RESTART PROTECTION IS VIA STEERING.
033769,000325:
033770,000326: 26,2301 COUNT* $$/P64
033771,000327:
033772,000328: 26,2301 05357 P64 TC NEWMODEX # ENTER VIA RTB WHEN .05G IS EXCEEDED.
033773,000329: 26,2302 00100 MM 64 B-14
033774,000330: 26,2303 32306 CA V06N74 # ROLLC VI D
033775,000331: # XXX.XX DEG XXXXX. FPS XXX.XX G
033776,000332: 26,2304 55114 TS ENTRYVN # DISPLAY VIA OVERNOUT.
033777,000333:
033778,000334: 26,2305 06030 TC DANZIG # ... AND CONTINUE IN INITROLL ...
033779,000335:
033780,000336: 26,2306 01512 V06N74 VN 0674
033781,000337:
033782,000338: # PROGRAM: P65
033783,000339: # MOD NO: 0 MOD BY: RR BAIRNSFATHER DATE: 17 JAN 68 COLOSSUS GSOP ADDITION.
033784,000340: # FUNCTION: TO CONTINUE ENTRY GUIDANCE, USING THE UP-CONTROL PHASE TO STEER TO A CONTROLLED EXIT
033785,000341: # CONDITION. THIS PHASE TERMINATES A) IF D < Q7 FPSS, GO TO P66 ,
033786,000342: # B) IF RDOT NEG, AND IF V < VL +500 FPS, GO TO P67.
033787,000343:
033788,000344: # CALLING SEQUENCE: BY RTB FROM REENTRY CONTROL
033789,000345: # EXIT: BACK TO REENTRY CONTROL, OR TO ENDOFJOB.
033790,000346: # SUBROUTINE CALLS: NEWMODEX
033791,000347:
033792,000348: 26,2307 COUNT* $$/P65
033793,000349:
033794,000350: 26,2307 05357 P65 TC NEWMODEX # ENTER VIA RTB WHEN RANGE < 25 N M OF
033795,000351: 26,2310 00101 MM 65 B-14 # TARGET.
033796,000352:
033797,000353: 26,2311 35064 CA PRIO13
033798,000354: 26,2312 05134 TC NOVAC
033799,000355: 26,2313 1114 EBANK= ENTRYVN
033800,000356: 26,2313 02325 54062 2CADR P65.1
033801,000357:
033802,000358: 26,2315 05375 TC 2PHSCHNG # 2 PHASE CHG REQUIRED TO PREVENT RE-
033803,000359: 26,2316 00554 OCT 00554 # STARTING FLASHING DISPLAY TWICE.
033804,000360: 26,2317 10035 OCT 10035 # 4.55 SPOT AND SERVICER, HERE.
033805,000361: 26,2320 01,2231 4P55SPT1 = 4.55SPOT
033806,000362: 26,2320 01,2253 5P3SPT8 = 5.3SPOT
033807,000363: 26,2320 06006 TC INTPRET
033808,000364: 26,2321 47131 SSP RTB
033809,000365: 26,2322 03646 GOTOADDR # CHANGE ENTRY MODE TO UPCONTRL.
033810,000366: 26,2323 53033 UPCONTRL
033811,000367: 26,2324 52117 REFAZE10 # GO HERE TO REESTABLISH ENTRY SEQUENCER.
033812,000368: # AND CONTINUE AT UPCONTRL...
033813,000369:
033814,000370: 26,2325 07722 P65.1 TC DOWNFLAG
033815,000371: 26,2326 00134 ADRES ENTRYDSP # ENTRYDSP = 92D BIT 13 FLAG 6
033816,000372:
033817,000373: 26,2327 32341 CA V16N69 # ROLLC DL (Q7) VL
033818,000374: 26,2330 04647 TC BANKCALL # XXX.XX DEG XXX.XX G XXXXX. FPS
033819,000375: 26,2331 20761 CADR GOFLASHR
033820,000376: 26,2332 02327 TC -3 # NODOFLAG IS SET..
033821,000377: 26,2333 02336 TC +3
033822,000378: 26,2334 02327 TC -5
033823,000379: 26,2335 02113 TC P61.3 # EST. GRP 4 FOR DSPLAY AND DO ENDOFJOB
033824,000380: # IF PROCEED, CONTINUE.
033825,000381: 26,2336 07710 TC UPFLAG
033826,000382: 26,2337 00134 ADRES ENTRYDSP # ENTRYDSP = 92D BIT 13 FLAG 6
033827,000383:
033828,000384: 26,2340 02271 TC P63.1 # DISABLE GRP 4, START UP ENTRY DISPLAY
033829,000385: # N06V68 VIA OVERNOUT, AS USED IN P64.
033830,000386: 26,2341 04105 V16N69 VN 1669
033831,000387:
033832,000388: # PROGRAM: P66
033833,000389: # MOD NO: 0 MOD BY: RR BAIRNSFATHER DATE: 17 JAN 68 COLOSSUS GSOP ADDITIONS.
033834,000390: # FUNCTION: KEEP CM ATTITUDE IN TRIM TO THE RELATIVE VELOCITY VECTOR. ENTRY GUIDANCE STOPS GENERATING
033835,000391: # ROLL COMMANDS UNTIL DRAG BUILDS UP TO Q7+0.5 FPSS.
033836,000392: # CALLING SEQUENCE: VIA RTB FROM REENTRY CONTROL.
033837,000393: # EXIT: BACK TO REENTRY CONTROL.
033838,000394: # SUBROUTINE CALLS: NEWMODEX
033839,000395:
033840,000396: 26,2342 COUNT* $$/P66
033841,000397:
033842,000398: 26,2342 05357 P66 TC NEWMODEX # ENTER VIA RTB WHEN D < Q7 FPSS
033843,000399: 26,2343 00102 MM 66 B-14
033844,000400:
033845,000401: 26,2344 35040 CA V06N22 # OGA IGA MGA
033846,000402: # XXX.XX DEG XXX.XX DEG XXX.XX DEG
033847,000403: 26,2345 02351 TC P66END # IN CASE CAME FROM P65, GO DISABLE GRP4,
033848,000404: # AND SET ENTRYDSP TO DO DISPLAY VIA
033849,000405: # OVERNOUT.
033850,000406:
033851,000407: # ... AND CONTINUE AT KEP2
033852,000408:
033853,000409: # P67
033854,000410:
033855,000411: # PROGRAM- P67
033856,000412: # MOD NO.- 0 MAR. 16, 1967
033857,000413: # MOD BY- R. HIRSCHKOP
033858,000414: # FUNCTION- TO TERMINATE STEERING WHEN THE CM VELOCITY WRT EARTH = 1000 FT/SEC
033859,000415: # CALLING SEQUENCE-
033860,000416: # EXIT- TO POOH
033861,000417: # SUBROUTINE CALLS- GOFLASH
033862,000418:
033863,000419: # THIS DISPLAY IS CALLED EACH PASS THROUGH STEERING. RESTART PROTECTION IS VIA STEERING.
033864,000420:
033865,000421: 26,2346 COUNT* $$/P67
033866,000422:
033867,000423: 26,2346 05357 P67 TC NEWMODEX # ENTER VIA RTB
033868,000424: 26,2347 00103 MM 67 B-14
033869,000425: 26,2350 32357 CA V06N66 # ROLLC XRNGERR DNRNGERR
033870,000426: # XXX.XX DEG XXXX.X NM XXXX.X NM
033871,000427: 26,2351 55114 P66END TS ENTRYVN # DISPLAY VIA OVERNOUT.
033872,000428:
033873,000429: 26,2352 07710 TC UPFLAG # (IN CASE CAME FROM P65. ENTRY DISPLAY
033874,000430: 26,2353 00134 ADRES ENTRYDSP # WILL FLUSH FLASHING DISP. IF STILL ON)
033875,000431: # BIT 13 FLAG 6
033876,000432: 26,2354 05415 KILLGRP4 TC PHASCHNG # DISABLE GRP4, IN CASE CAME FROM HUNTEST.
033877,000433: 26,2355 00004 OCT 00004 # (COME TO KILLGRP4 VIA RTB, RET TO CALLER)
033878,000434:
033879,000435: 26,2356 06030 TC DANZIG # ... AND CONTINUE AT PREDICT3 ...
033880,000436:
033881,000437: 26,2357 01502 V06N66 VN 0666
033882,000438:
033883,000439: 26,2000 SETLOC P60S2
033884,000440: 26,2000 BANK
033885,000441:
033886,000442: 26,2360 32412 P67.1 CA V16N67 # RTOGO LAT LONG
033887,000443: # XXXX.X NM XXX.XX DEG XXX.XX DEG
033888,000444: 26,2361 04647 TC BANKCALL
033889,000445: 26,2362 20623 CADR GOFLASH
033890,000446: 26,2363 02366 TC +3 # EFFECTIVE GOTOPOOH
033891,000447: 26,2364 02366 TC +2
033892,000448: 26,2365 02360 TC P67.1 # REDO
033893,000449:
033894,000450: 26,2366 00004 INHINT
033895,000451: 26,2367 35000 CA CM/DSBIT
033896,000452: 26,2370 65001 AD GYMDIBIT
033897,000453: 26,2371 40000 COM
033898,000454: 26,2372 70102 MASK CM/FLAGS # CM/DSTBY, GAMDIFSW
033899,000455: 26,2373 54102 TS CM/FLAGS
033900,000456: 26,2374 00003 RELINT
033901,000457: 26,2375 00006 EXTEND
033902,000458: 26,2376 32512 DCA SERVCAD2
033903,000459: 26,2377 53054 DXCH AVEGEXIT
033904,000460:
033905,000461: 26,2400 14103 TCF GOTOPOOH
033906,000462:
033907,000463: 26,2401 43175 P67.2 VLOAD CLEAR # CALC PRESENT LAT, LONG, ALT.
033908,000464: 26,2402 01022 RN
033909,000465: 26,2403 00662 ERADFLAG # USE PAD RAD FOR ALT. (NOT SEEN ANYWAY)
033910,000466: 26,2404 16054 STODL ALPHAV
033911,000467: 26,2405 01036 PIPTIME # USE TIME OF RN
033912,000468: 26,2406 77624 CALL
033913,000469: 26,2407 22461 LAT-LONG
033914,000470: 26,2410 77634 P67.3 RTB # ENTRY EXIT THAT OMITS DISPLAY.
033915,000471: 26,2411 53606 SERVNOUT
033916,000472:
033917,000473: 26,2412 04103 V16N67 VN 1667
033918,000474: 26,2413 00041 OCT41 OCT 41
033919,000475: 26,2414 26,2511 SERVCAD2 = SERVCAD1
033920,000476:
033921,000477: # SUBROUTINE NAME: S61.1
033922,000478: # MOD NO: 0 DATE: 21 FEB 67
033923,000479: # MOD BY: RR BAIRNSFATHER LOG SECTION: P61-P67
033924,000480: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 22 JUN 67 RESTARTS.
033925,000481: # FUNCTIONAL DESCRIPTION: CALLED BY BOTH P61 AND P62
033926,000482: # FIRST, TEST TO SEE IF AVERAGEG IS ON. IF NOT, UPDATE THE STATE VECTOR TO PRESENT TIME + TOLERANCE
033927,000483: # AND TURN ON AVERAGEG AT THAT TIME, AND CONTINUE. OTHERWISE CONTINUE: SEE IF IMU Y AXIS IS
033928,000484: # WITHIN 30 DEG OF V*R. IF YES, EXIT SUBROUTINE S61.1. IF NO, SEE IF -Y AXIS OF IMU IS WITHIN
033929,000485: # 30 DEG OF V*R. IF YES, DISPLAY ALARM: 01427 IMU REVERSED.
033930,000486: # IF NO, DISPLAY ALARM: 01426 IMU UNSATISFACTORY.
033931,000487: # IN EITHER OF THESE LAST 2 CASES, WAIT 10 SEC AND THEN EXIT SUBROUTINE S61.1.
033932,000488:
033933,000489: # REMARK: THERE WILL BE A SHORT 10 SEC DELAY IF AN ALARM EXIT IS TAKEN. THE DELAY FOR INTEGRATION IS
033934,000490: # AS SHORT AS CAN BE MADE, BUT IS ARBITRARY SINCE IT DEPENDS ON THE AGE OF THE STATE VECTOR.
033935,000491:
033936,000492: # CALLING SEQUENCE: CALL
033937,000493: # S61.1
033938,000494: # C(MPAC) UNSPECIFIED
033939,000495: # PUSHLOC UNSPECIFIED
033940,000496:
033941,000497: # SUBROUTINES CALLED: LOADTIME, CSMPREC, TPAGREE,
033942,000498: # WAITLIST, JOBSLEEP, JOBWAKE, PREREAD, ALARM, GODSPR, BANKCALL, DELAYJOB
033943,000499: # NORMAL EXIT MODES: RVQ
033944,000500: # ALARMS: 01426 IMU UNSATISFACTORY
033945,000501: # 01427 IMU REVERSED
033946,000502: # OUTPUT: POSSIBLE ALARMS
033947,000503: # POSSIBLY TDEC1, RATT, VATT, RN, VN
033948,000504: # ERASABLE INITIALIZATION REQUIRED:
033949,000505: # AVEGFLAG AVERAGEG ON OR OFF LEFT BY SERVICER
033950,000506: # PIPTIME (-28) CS TIME OF PIPA UPDATE LEFT BY READACCS
033951,000507: # RN (-29) M STATE VECTOR LEFT BY AVERAGEG
033952,000508: # VN (-7) M/CS STATE VECTOR LEFT BY AVERAGEG
033953,000509: # REFSMMAT (-1) .5 REF TO SM MATRIX LEFT BY LAST IMU ALIGNMENT
033954,000510:
033955,000511: # DEBRIS: QPRET
033956,000512: # POSSIBLY PIPTIME1, RATT, VATT, TDEC1, RN1, VN1, QTEMP, X1 IF UPDATED
033957,000513: # PUSH LIST LOCS USED BY CSMPREC
033958,000514:
033959,000515: 26,2414 E6,1712 EBANK= AOG # FOR 60GENRET, S61DT
033960,000516: 26,2000 SETLOC P60S3
033961,000517: 26,2000 BANK
033962,000518:
033963,000519: 26,2414 COUNT* $$/S61.1
033964,000520:
033965,000521: 26,2414 00006 S61.1 EXTEND
033966,000522: 26,2415 23775 QXCH 60GENRET # SAVE RET ADDR IN EB 6
033967,000523: 26,2416 04647 TC BANKCALL
033968,000524: 26,2417 03737 CADR R02BOTH
033969,000525: 26,2420 06006 TC INTPRET
033970,000526:
033971,000527: 26,2421 45014 BON CALRB
033972,000528: 26,2422 00716 AVEGFLAG # IS AVERAGEG ON
033973,000529: 26,2423 54453 S61.1A # YES
033974,000530: 26,2424 27535 MIDTOAV2 # GET FUTURE STATE VECTOR SOON AS CAN
033975,000531:
033976,000532: 26,2425 30155 CA MPAC +1 # RETURN INHINTED ***
033977,000533: 26,2426 55776 TS S61DT # FOR RESTART.
033978,000534: 26,2427 05246 TC WAITLIST
033979,000535: 26,2430 E7,1425 EBANK= DVTOTAL
033980,000536: 26,2430 02435 54067 2CADR S61.1C
033981,000537:
033982,000538: 26,2432 05415 TC PHASCHNG
033983,000539: 26,2433 40434 OCT 40434
033984,000540: 26,2434 01,2212 4P43SPT1 = 4.43SPOT
033985,000541: 26,2434 05220 TC ENDOFJOB
033986,000542:
033987,000543: 26,2435 35064 S61.1C CA PRIO13
033988,000544: 26,2436 05150 TC FINDVAC
033989,000545: 26,2437 E6,1712 EBANK= AOG
033990,000546: 26,2437 02452 54066 2CADR S61.1A-1
033991,000547:
033992,000548: 26,2441 00006 EXTEND
033993,000549: 26,2442 32512 DCA SERVCAD1 # HE WHO STARTS AVERAGEG MUST SERVICE
033994,000550: 26,2443 53054 DXCH AVEGEXIT # THE EXIT.
033995,000551:
033996,000552: 26,2444 05375 TC 2PHSCHNG
033997,000553: 26,2445 00454 OCT 00454
033998,000554: 26,2446 00175 OCT 00175
033999,000555: 26,2447 01,2215 4P45SPT1 = 4.45SPOT
034000,000556: 26,2447 01,2275 5P17SPT1 = 5.17SPOT
034001,000557: 26,2447 04606 TC E7SETTER
034002,000558:
034003,000559: 26,2450 04666 TC POSTJUMP
034004,000560: 26,2451 76447 CADR PREREAD # PREREAD DOES TC TASKOVER.
034005,000561:
034006,000562: 26,2452 06006 S61.1A-1 TC INTPRET
034007,000563: 26,2453 77204 S61.1A BOVB VLOAD
034008,000564: 26,2454 57450 TCDANZIG # TURN OFF OVFIND, IF ON
034009,000565: 26,2455 01030 VN # VN (-7) M/CS
034010,000566: 26,2456 64235 VXV MXV
034011,000567: 26,2457 01022 RN # RN (-29) M
034012,000568: 26,2460 01720 REFSMMAT # .5 UNIT MATRIX
034013,000569: 26,2461 71256 UNIT DLOAD
034014,000570: 26,2462 00160 MPAC +3 # GET COS(THETA)/2
034015,000571: 26,2463 43240 BMN DAD
034016,000572: 26,2464 54471 S61.1B # DO TEST ON -YSM
034017,000573: 26,2465 14514 C(30)LIM # = 1.0 -.5 COS(30)
034018,000574: 26,2466 47004 BOVB RTB
034019,000575: 26,2467 54510 RETRN1
034020,000576: 26,2470 54475 RETRN3
034021,000577: 26,2471 43276 S61.1B DCOMP DAD
034022,000578: 26,2472 14514 C(30)LIM # = 1.0 - .5 COS(30)
034023,000579: 26,2473 77404 BOVB EXIT
034024,000580: 26,2474 54500 RETRN2
034025,000581:
034026,000582: 26,2475 05644 RETRN3 TC ALARM
034027,000583: 26,2476 01426 OCT 01426 # IMU UNSATISFACTORY
034028,000584: 26,2477 02502 TC RETRN2 +2
034029,000585:
034030,000586: 26,2500 05644 RETRN2 TC ALARM
034031,000587: 26,2501 01427 OCT 01427 # IMU REVERSED
034032,000588:
034033,000589: 26,2502 35036 +2 CAF V05N09
034034,000590: 26,2503 04647 TC BANKCALL
034035,000591: 26,2504 20570 CADR GODSPR # DO DISPLAY
034036,000592: 26,2505 32515 CA 10SECS
034037,000593: 26,2506 04647 TC BANKCALL
034038,000594: 26,2507 01731 CADR DELAYJOB
034039,000595:
034040,000596: 26,2510 01775 RETRN1 TC 60GENRET
034041,000597:
034042,000598: 26,2511 E7,1425 EBANK= DVTOTAL
034043,000599: 26,2511 03033 76067 SERVCAD1 2CADR SERVEXIT
034044,000600: 26,2513 22111 17335 C(30)LIM 2DEC .566985 # = 1.0 - .5 COS(30)
034045,000601: 26,2515 01750 10SECS DEC 1000 B-14 # 1000 CS
034046,000602: 26,2516 00000 13560 60SECDP 2DEC 6000 B-28 # 6000 CS
034047,000603:
034048,000604: # PROGRAM NAME: S61.2 DATE: 14 FEB 67
034049,000605: # MOD NO: 1 LOG SECTION: P61-P67
034050,000606: # MOD BY: MORTH / BAIRNSFATHER
034051,000607: # MOD NO: 2 MOD BY: MORTH/BAIRNSFATHER DATE: 11 MAY 67 ADD 2ND ITER FOR ERAD AT 400K FT.
034052,000608: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 21 NOV 67 VARIABLE MU ADDED.
034053,000609: # MOD NO: 4 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 68 DIFFERENT EARTH/MOON SCALES IN TFF'S
034054,000610: # FUNCTIONAL DESCRIPTION: CALLED BY P61. PROVIDES DISPLAYS FOR NOUNS N60 AND N63 .
034055,000611: # PROGRAM CALCULATES ENTRY DISPLAY OF MAXIMUM ACCELERATION EXPECTED (GMAX) AND ALSO THE EXPECTED
034056,000612: # INERTIAL VELOCITY (VPRED) AND ENTRY ANGLE (GAMMAEI) THAT WILL OBTAIN AT 400K FT ABOVE THE FISCHER
034057,000613: # ELLIPSOID. PROGRAM ALSO CALCULATES A SECOND DISPLAY RELATIVE TO THE EMSALT ABOVE FISCHER ELLIPSOID
034058,000614: # AND CONSISTS OF RANGE TO SPLASH FROM NOW (RTGO) , PREDICTED INERTIAL VELOCITY (VIO) , AND THE TIME TO
034059,000615: # GO FROM NOW (TTE) .
034060,000616: # CALLING SEQUENCE: CALL
034061,000617: # S61.2
034062,000618: # C(MPAC) UNSPECIFIED
034063,000619: # PUSHLOC WILL BE SET TO ZERO.
034064,000620:
034065,000621: # SUBROUTINES CALLED: TFFCONIC, CALCTFF, TFF/TRIG, FISHCALC, GETERAD, VGAMCALC
034066,000622: # NORMAL EXIT MODES: RTB P61.1
034067,000623: # ALARMS: NONE
034068,000624: # OUTPUT: THE FOLLOWING REGISTERS ARE WRITTEN IN FOR USE BY DISPLAYS
034069,000625: # GMAX 100 GMAX (-14) G,S MAXIMUM ACCELERATION
034070,000626: # VPRED (-7) M/CS PREDICTED VELOCITY AT 400K FT
034071,000627: # GAMMAEI GAMMA/360 PREDICTED GAMMA AT 400K FT
034072,000628: # FOR TM, DP(GAMMAEI) = (GAMMAEI, RTGO) / 360
034073,000629: # RTGO THETAH/360 RANGE ANGLE TO SPLASH FROM EMSALT EMSALT IS PAD LOADED
034074,000630: # VIO (-7) M/CS INERTIAL VELOCITY AT EMSALT EMSALT IS PAD LOADED
034075,000631: # TTE (-28) CS TIME TO EMSALT EMSALT IS PAD LOADED
034076,000632:
034077,000633: # PUSHLOC = 0
034078,000634: # CONIC PARAMETERS STORED IN VAC AREA (SEE TFF SUBROUTINES)
034079,000635: # ERASABLE INITIALIZATION REQUIRED:
034080,000636: # RONE (-29) M STATE VECTOR LEFT BY USER
034081,000637: # VONE (-7) M/CS STATE VECTOR LEFT BY USER
034082,000638: # URONE UR/2 LEFT BY USER
034083,000639: # UNI (-1) UNIT NORMAL V*R LEFT BY ENTRY / P61
034084,000640: # THETAH THETAH/360 RANGE ANGLE LEFT BY ENTRY / P61
034085,000641: # UNITW (0) UNIT POLAR VECTOR LEFT BY PAD LOAD
034086,000642: # EMSALT (-29) M EMS INTERFACE ALTITUDE LEFT BY PAD LOAD
034087,000643: # ORBITAL REENTRY: 284643 FT, LUNAR REENTRY: 297431 FT.
034088,000644: # DEBRIS: QPRET,
034089,000645: # ALL PDL LOCATIONS ABOVE 12D, INCLUDING X1,X2,S1,S2
034090,000646: # ALSO PDL+0 ... PDL+5, WHERE INITIAL PUSHLOC = PDL
034091,000647:
034092,000648:
034093,000649: # THE FOLLOWING PUSH LIST LOCATIONS HAVE BEEN RESERVED FOR TFF ROUTINES AND ARE REPEATED HERE FOR CONVENIENCE.
034094,000650: # OF COURSE FOR S61.2 USAGE, EARTH ORIGIN SCALING IS USED.
034095,000651:
034096,000652: # BELOW E: IS USED FOR EARTH ORIGIN SCALE
034097,000653: # M: IS USED FOR MOON ORIGIN SCALE
034098,000654:
034099,000655: # RTERM = 18D TERMINAL RADIUS M E: (-29) M: (-27)
034100,000656: # NRTERM = 16D TERMINAL RADIUS M E: (-29+NR)
034101,000657: # M: (-27+NR)
034102,000658: # RMAG1 = 12D PRESENT RADIUS M E: (-29) M: (-27)
034103,000659: # NRMAG = 32D PRESENT RADIUS M E: (-29+NR)
034104,000660: # M: (-27+NR)
034105,000661: # SDELF/2 SIN(THETA) / 2
034106,000662: # CDELF/2 = 14D COS(THETA) / 2
034107,000663: # TFFX = 34D X, ARGUMENT OF SERIES T(X).
034108,000664: # TFFTEM = 36D ARG FOR TRANSFER ANGLE CALCULATION.
034109,000665: # TFFNP = 28D LC P M E: (-38+2NR) M: (-36+2NR)
034110,000666: # TFF/RTMU= 30D 1/SQRT(MU) E: (17) M: (14)
034111,000667: # TFFVSQ = 20D -(VN.VN/MU) 1/M E: (20) M: (18)
034112,000668:
034113,000669: 26,2000 SETLOC P60S2
034114,000670: 26,2000 BANK
034115,000671:
034116,000672: 26,2520 COUNT* $$/S61.2
034117,000673:
034118,000674: # PDL LEFT AT ZERO BY TARGETNG
034119,000675:
034120,000676: 26,2520 45345 S61.2 DLOAD DSU
034121,000677: 26,2521 02005 EMSALT
034122,000678: 26,2522 14654 290KFT
034123,000679: 26,2523 71244 BPL DLOAD
034124,000680: 26,2524 54650 LUNENT
034125,000681: 26,2525 17452 1/RTMU # ESTABLISH MU FOR ORBITAL ENTRIES
034126,000682: 26,2526 77624 CALLCON CALL
034127,000683: 26,2527 57055 TFFCONIC # FILL VAC AREA WITH CONIC PARAMETERS
034128,000684:
034129,000685: 26,2530 45145 DLOAD CALL
034130,000686: 26,2531 14672 RTRIAL # 1 ST GUESS AT TERMINAL RADIUS (-29)
034131,000687: 26,2532 57165 CALCTFF # SAVES MPAC IN RTERM (18D)
034132,000688:
034133,000689: 26,2533 77624 CALL # CALC SDELF/2, CDELF/2
034134,000690: 26,2534 56766 TFF/TRIG # RETURN WITH S(THETA) IN MPAC
034135,000691:
034136,000692: 26,2535 77624 CALL # GET FISCHER RADIUS (-29) M
034137,000693: 26,2536 54701 FISHCALC # ANS IN MPAC AND IN ERADM.
034138,000694:
034139,000695: 26,2537 45015 DAD CALL
034140,000696: 26,2540 02005 EMSALT
034141,000697: 26,2541 57165 CALCTFF # SAVES MPAC IN RTERM (18D)
034142,000698:
034143,000699: 26,2542 03733 STORE TTE1 # USED IN TARGET ITERATION (DISPTARG)
034144,000700: 26,2543 57415 DAD DCOMP # DECR 'TTE' FROM BASE 'TTE2' IN 'SERVICER
034145,000701: 26,2544 03651 MM # 'PIPTIME' FOR STATE VECTOR
034146,000702: # DNLIST AND DSKY WILL USE TTE.
034147,000703: 26,2545 03735 STORE TTE2 # TTE=PIPTIME+TTE2=-(TTE1+MM-PIPTIME)
034148,000704: 26,2546 77615 DAD # DECREMENT 'TTE' FOR DISPLAY AND DOWNLINK
034149,000705: 26,2547 01036 PIPTIME # UNTIL SERVICER COMES ALONG.
034150,000706: 26,2550 37727 STCALL TTE # 'TTE' IS NEGATIVE AS IN COUNTDOWN.
034151,000707:
034152,000708: # TTE= TIME FROM NOW TO EMSALT +FISCHER
034153,000709:
034154,000710: 26,2551 56766 TFF/TRIG # S(THETA) IN MPAC ON RETURNING
034155,000711: # AND THETA= RANGE FROM NOW TO EMSALT
034156,000712:
034157,000713: 26,2552 77624 CALL
034158,000714: 26,2553 54701 FISHCALC
034159,000715: 26,2554 77624 CALL
034160,000716: 26,2555 11221 VRCALC
034161,000717: 26,2556 77624 CALL
034162,000718: 26,2557 11206 DISPTARG
034163,000719: 26,2560 77624 CALL
034164,000720: 26,2561 11206 DISPTARG
034165,000721: 26,2562 37714 STCALL RTGO
034166,000722: 26,2563 54722 VGAMCALC
034167,000723:
034168,000724: 26,2564 77605 DMP # MPAC = GAMMA
034169,000725: # PDL0 HAS VGAM.
034170,000726: 26,2565 43265 BDDV DAD
034171,000727: 26,2566 14700 VEMSCON # -HS D 180/PI (-14)
034172,000728: 26,2567 00001 0 # VGAM FROM PDL0.
034173,000729: 26,2570 17725 STODL VIO # PREDICTED VELOCITY AT EMSALT.
034174,000730:
034175,000731: # GAMMA AND VGAM AT 300K FT ARE REQUIRED BY GMAX
034176,000732: # ALGORITHM.
034177,000733:
034178,000734: 26,2571 02142 ERADM # EARTH RADIUS FROM GETERAD (-29) M
034179,000735: # = FISCHER RADIUS (-29)
034180,000736: 26,2572 77615 DAD
034181,000737: 26,2573 06551 300KFT # M (-29)
034182,000738: 26,2574 34023 STCALL RTERM # TERMINAL RADIUS M (-29)
034183,000739:
034184,000740: 26,2575 54717 PREVGAM # VGAMCALC WITH NEW RTERM
034185,000741:
034186,000742: # VBAR = (V(FPS) - 36KF/S) / 20KF/S
034187,000743: # GMAX = (4/(1 + 4.8 VBARSQ))(GAM -6.05 -2.4 VBARSQ) - 10(L/D - .3) + 10 ASSUME L/D = 0.3, BANK =0.
034188,000744:
034189,000745: # GMAXCALC
034190,000746: 26,2576 45325 PDDL DSU # GAM TO PDL2
034191,000747: 26,2577 00001 0 # VGAM IS IN PDL0 (-7)
034192,000748: 26,2600 14656 36KFT/S # (-7) M/CS
034193,000749: 26,2601 63471 DDV DSQ
034194,000750: 26,2602 14660 20KFT/S # (-6) M/CS
034195,000751: 26,2603 00001 STORE 0 # VBARSQ (-2) TO PDL0
034196,000752:
034197,000753: 26,2604 43205 DMP DAD
034198,000754: 26,2605 14662 KR1
034199,000755: # GAM, POS DOWN, FROM PDL2
034200,000756: 26,2606 41215 DAD DMP
034201,000757: 26,2607 14664 -6.05DEG
034202,000758: 26,2610 14666 KR2
034203,000759: 26,2611 77725 PDDL # XCH PDL+0 FOR VBARSQ (-2)
034204,000760: 26,2612 43271 DDV DAD
034205,000761: 26,2613 14676 KR4
034206,000762: 26,2614 17464 DP2(-4)
034207,000763: 26,2615 77665 BDDV
034208,000764: # NUM FROM PDL+0
034209,000765: 26,2616 51015 DAD BPL
034210,000766: 26,2617 14670 KR3
034211,000767: 26,2620 54623 +3
034212,000768: 26,2621 77745 DLOAD
034213,000769: 26,2622 15204 HI6ZEROS
034214,000770: 26,2623 17722 STODL GMAX # 100 GMAX (-14)
034215,000771:
034216,000772: # DISPLAY USES GMAX AS SP, SO LO WORD IS WRITTEN OVER BY VPRED.
034217,000773:
034218,000774: 26,2624 02142 ERADM # = FISCHER RADIUS (-29) M
034219,000775: 26,2625 45015 DAD CALL # 2 ND ITERATION FOR FISCHER RADIUS
034220,000776: 26,2626 14674 400KFT
034221,000777: 26,2627 57165 CALCTFF # ESTABLISH TRANSFER ANGLE DATA.
034222,000778: 26,2630 77624 CALL
034223,000779: 26,2631 56766 TFF/TRIG # GET SIN, COS DELF
034224,000780: 26,2632 77624 CALL
034225,000781: 26,2633 54701 FISHCALC # GET CORRESPONDING FISCHER RADIUS.
034226,000782:
034227,000783: 26,2634 73015 DAD LXA,2 # SAVE HI-WORD FOR DOWNLIST.
034228,000784: 26,2635 14674 400KFT # M (-29)
034229,000785: 26,2636 03713 RTGO # (RANGE ANGLE FROM EMSALT)/360
034230,000786: 26,2637 34023 STCALL RTERM
034231,000787: 26,2640 54717 PREVGAM # VGAMCALC WITH NEW RTERM
034232,000788:
034233,000789: 26,2641 67076 DCOMP SXA,2 # HI-WORD OF EACH ON DOWNLIST.
034234,000790: 26,2642 00155 MPAC +1
034235,000791: 26,2643 17741 STODL GAMMAEI # CONIC GAMMA/360 AT 400K FT. ( HI-WORD)
034236,000792: # CONIC RTGO/360 FROM EMSALT (LOW-WORD)
034237,000793: # FOR TM, DP(GAMMAEI) = (GAMMA, RTGO)/360
034238,000794:
034239,000795: # VGAM FROM PDL+0 (-7)
034240,000796: 26,2644 77626 STADR
034241,000797: 26,2645 74040 STORE VPRED # CONIC VELOCITY AT 400K FT
034242,000798:
034243,000799: 26,2646 77634 RTB
034244,000800: 26,2647 54153 P61.1
034245,000801: # PDL BACK TO ZERO.
034246,000802:
034247,000803: 26,2650 52145 LUNENT DLOAD GOTO
034248,000804: 26,2651 06547 1/RTMUE # ESTABLISH MU FOR LUNAR TYPE ENTRIES
034249,000805: 26,2652 54526 CALLCON
034250,000806: 26,2653 00002 26244 290KFT 2DEC 88392.0 B-29
034251,000807: 26,2655 33335 05707 36KFT/S 2DEC 109.728 B-7 # (-7) M/CS = 36 KFT/S (-7)
034252,000808: 26,2657 36365 30244 20KFT/S 2DEC 121.92 B-7 # (-6) M/CS = 2 20KFT/S (-7)
034253,000809: 26,2661 77113 42770 KR1 2DEC -.026666667 # = -2.4 4 / 360
034254,000810: 26,2663 77354 65030 -6.05DEG 2DEC -.016805556 # = -6.05 / 360
034255,000811: 26,2665 21450 00001 KR2 2DEC .54931641 # = (360/4) 100 (-14) = 9000 B-14
034256,000812: 26,2667 01750 00000 KR3 2DEC 1000 B-14 # = 100 (10.0) (-14) G,S
034257,000813: # ASSUMES L/D = 0.3, BANK =0.
034258,000814: 26,2671 00305 04541 RTRIAL 2DEC 6460097.18 B-29 # RPAD +284643 FT =21 194 545 FT
034259,000815: # RPAD DEFINED AS 20 909 901.57 FT =6 373 338 M
034260,000816: 26,2673 00003 27040 400KFT 2DEC 121920 B-29 # METERS
034261,000817:
034262,000818: # 300KFT 2DEC 91440 B-29 (-29) M
034263,000819:
034264,000820: # EMSALT 2DEC 86759.2 B-29 284643 FT (-29) M (ORBITAL REENTRY)
034265,000821:
034266,000822: # EMSALT 2DEC 90657 B-29 297431 FT (-29) M (LUNAR REENTRY)
034267,000823:
034268,000824: 26,2675 32525 12525 KR4 2DEC .833333333
034269,000825: 26,2677 23,2550 300KFT EQUALS MINPERE
034270,000826: 26,2677 77777 76601 VEMSCON 2DEC -.0389676 B-14 # = -HS D / 2 PI (-14) M SQ / CS SQ
034271,000827: # =- 16369 .05G 32.2 .3048 .3048/2 PI (-14)
034272,000828:
034273,000829: # SUBROUTINE NAME: FISHCALC (USED BY S61.2) DATE: 01.21.67
034274,000830: # MOD NO: 0 LOG SECTION: P61-P67
034275,000831: # MOD BY: MORTH / BAIRNSFATHER
034276,000832: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 11 MAY 67 INCLUDE GETERAD CALL
034277,000833: # FUNCTIONAL DESCRIPTION: GIVEN THE PRESENT POSITION, UNITR, CALCULATE A NEW UNITR THAT IS ROTATED THROUGH
034278,000834: # TRANSFER ANGLE, THETA, ALONG TRAJECTORY. THEN CALCULATE SIN(LAT) AND USE TO OBTAIN FISCHER RADIUS.
034279,000835:
034280,000836: # SINCE FISHCALC USES UNI (LEFT BY ENTRY) EARTH SCALING IS ASSUMED. (WILL IMPROVE FOR SUITABLE TENNANT)
034281,000837:
034282,000838: # CALLING SEQUENCE: CALL
034283,000839: # FISHCALC
034284,000840: # ENTER WITH .5 SIN(THETA) IN MPAC.
034285,000841: # PUSHLOC IS AT PDL+0, AN ARBITRARY BASE VALUE IF LEQ 8D
034286,000842:
034287,000843: # SUBROUTINES CALLED: GET ERAD
034288,000844: # NORMAL EXIT MODE: RVQ
034289,000845: # EXIT MODES: NONE
034290,000846: # OUTPUT: ERADM (-29) M IN MPAC ON RETURNING
034291,000847: # NEW UNIT VECTOR NOT SAVED.
034292,000848: # SIN(LAT) NOT SAVED.
034293,000849: # PUSHLOC AT PDL+0
034294,000850:
034295,000851: # ERASEABLE INITIALIZATION REQUIRED:
034296,000852: # SDELF/2 =SIN(THETA) /2, IN MPAC LEFT BY TFF/TRIG
034297,000853: # CDELF/2 =COS(THETA) /2, STORED IN PDL 14D LEFT BY TFF/TRIG
034298,000854: # RONE (-29) M LEFT BY USER
034299,000855: # VONE (-7) M/CS LEFT BY USER
034300,000856: # URONE UR/2 LEFT BY USER
034301,000857: # UNI .5 UNIT(V*R) LEFT BY ENTRY / P61
034302,000858: # UNITW UNIT NORTH POLE LEFT BY PAD LOAD
034303,000859: # DEBRIS: QPRET, PDL+0 ... PDL+5
034304,000860:
034305,000861: # - - -
034306,000862: 26,2701 47315 FISHCALC PDVL VXV # URPR = UR CDELF + UHOR SDELF
034307,000863: 26,2702 02156 URONE
034308,000864: 26,2703 03502 UNI
034309,000865: 26,2704 76561 VXSC VSL1
034310,000866: # SIN(THETA) / 2 FROM PDL+0
034311,000867: 26,2705 74315 PDVL VXSC # TO PDL+0, +5
034312,000868: 26,2706 02156 URONE
034313,000869: 26,2707 00017 CDELF/2 # COS(THETA) /2
034314,000870: 26,2710 45455 VAD STADR
034315,000871: 26,2711 74235 STORE URH # FOR USE IN RTGO FROM EMS DISPLAY
034316,000872: 26,2712 72441 DOT SL1
034317,000873: 26,2713 02031 UNITW # FULL UNIT VECTOR UNIT NORTH
034318,000874: 26,2714 02060 STORE ALPHAV +4 # = .5 SIN(LAT)
034319,000875: 26,2715 77650 DUMPFISH GOTO
034320,000876: 26,2716 22561 GETERAD # SAVES FISCHER RAD (-29) M IN ERADM AND
034321,000877: # IN MPAC. RETURNS TO CALLER VIQ QPRET.
034322,000878:
034323,000879: # SUBROUTINE NAME: VGAMCALC (USED BY S61.2) DATE: 01.21.67
034324,000880: # MOD NO: 0 LOG SECTION: P61-P67
034325,000881: # MOD BY: MORTH / BAIRNSFATHER
034326,000882: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 11 APR 67
034327,000883: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 21 NOV 67 VARIABLE MU ADDED.
034328,000884: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 68 ACCEPT DIFFERENT EARTH/MOON SCALE
034329,000885: # FUNCTIONAL DESCRIPTION: EARTH CENTERED VIS VIVA CALCULATION OF TERMINAL VELOCITY AND GAMMA (REL TO
034330,000886: # HORIZONTAL) GIVEN THE SCALAR QUANTITIES: PRESENT RADIUS AND VELOCITY AND THE TERMINAL RADIUS.
034331,000887: # THE USER MUST APPEND PROPER SIGN TO GAMMA, SINCE IT IS CALCULATED AS A POSITIVE NUMBER.
034332,000888: # THE EQUATIONS ARE
034333,000889:
034334,000890: # VGAM = SQRT(VN VN/MU + 2(RN-RTERM)/(RN RTERM) ) RTMU
034335,000891:
034336,000892: # COSGAM = H /RTERM VGAM = SQRT(LCP)/ (RTERM VGAM/RTMU)
034337,000893:
034338,000894: # VGAMCALC ASSUMES THAT THE TERMINAL RADIUS IS LESS THAN THE PRESENT RADIUS. BOTH CALCTFF AND CALCTPER
034339,000895: # MAKE THIS ASSUMPTION.
034340,000896:
034341,000897: # CALLING SEQUENCE: CALL STCALL RTERM
034342,000898: # VGAMCALC PREVGAM
034343,000899: # PUSHLOC AT PDL+0, ARBITRARY IF LEQ 12D
034344,000900: # C(MPAC) UNSPECIFIED C(MPAC)=NEW RTERM
034345,000901:
034346,000902: # SUBROUTINES CALLED: NONE
034347,000903: # NORMAL EXIT MODE: RVQ
034348,000904: # ALARMS: NONE
034349,000905: # OUTPUT: GAMMA / 360 IN MPAC, POSITIVE NUMBER
034350,000906: # VGAM E:(-7) M:(-5) M/CS IN PDL+0
034351,000907: # PUSHLOC AT PDL+2
034352,000908: # ERASABLE INITIALIZATION REQD:
034353,000909: # TFF/RTMU E:(17) M:(14) 1/SQRT(MU) LEFT BY TFFCONIC.
034354,000910: # RMAG1 E:(-29) M:(-27) M PRESENT RADIUS LENGTH LEFT BY TFFCONIC
034355,000911: # NRMAG E:(-29+NR) M NORM LENGTH OF PRESENT POSITION LEFT BY TFFCONIC
034356,000912: # M:(-27+NR)
034357,000913: # RTERM E:(-29) M:(-27) M TERMINAL RADIUS LENGTH LEFT BY CALCTFF
034358,000914: # NRTERM E:(-29+NR) M NORM LENGTH OF TERMINAL RADIUS LEFT BY CALCTFF
034359,000915: # M:(-27+NR)
034360,000916: # TFFVSQ E:(20) M:(18) 1/M -(V SQ/MU): PRESENT VELOCITY, NORM LEFT BY TFFCONIC
034361,000917: # TFFNP E:(-38+2NR) M LCP, SEMI-LATUS RECTUM, WEIGHT NR LEFT BY TFFCONIC
034362,000918: # M:(-36+2NR)
034363,000919: # DEBRIS: QPRET, PDL+0 ... PDL+3
034364,000920: # RTERM, NRTERM IF PREVGAM ENTERED.
034365,000921:
034366,000922: 26,2717 77657 PREVGAM SL* # ENTER WITH NEW RTERM IN MPAC
034367,000923: # E: (-29) M: (-27)
034368,000924: 26,2720 20201 0,1 # X1 = -NR
034369,000925: 26,2721 00021 STORE NRTERM # RTERM M E: (-29+NR) M: (-27+NR)
034370,000926:
034371,000927: 26,2722 41345 VGAMCALC DLOAD DMP
034372,000928: 26,2723 00041 NRMAG # RMAG M E: (-29+NR) M: (-27+NR)
034373,000929: 26,2724 00021 NRTERM # RTERM M E: (-29+NR) M: (-27+NR)
034374,000930: 26,2725 45325 PDDL DSU # RMAG RTERM M E: (-58+2NR) M: (-54+2NR)
034375,000931: 26,2726 00041 NRMAG # RMAG M E: (-29+NR) M: (-27+NR)
034376,000932: 26,2727 00021 NRTERM # RTERM M E: (-29+NR) M: (-27+NR)
034377,000933: 26,2730 56257 SL* DDV # 2(RN-RTERM) E: (-30+NR) M: (-28+NR)
034378,000934: 26,2731 20171 0 -8D,1 # (-8+NR)
034379,000935: # PUSH UP PRODUCT.
034380,000936: 26,2732 77625 DSU
034381,000937: 26,2733 00025 TFFVSQ # -(V SQ/MU) E: (20) M: (18)
034382,000938: 26,2734 41566 SQRT PUSH # SAVE VGAM/RT(MU) FOR NOW. E: (10) M: (9)
034383,000939: 26,2735 65271 DDV PDDL # XCH PDL+0, LEAVING VGAM FOR OUTPUT.
034384,000940: # VGAM TO PDL M/CS E: (-7) M: (-2)
034385,000941: 26,2736 00037 TFF/RTMU # E: (17) M: (14)
034386,000942: 26,2737 65205 DMP PDDL # RTERM VGAM/RTMU E: (-19+NR) M: (-18+NR)
034387,000943: 26,2740 00021 NRTERM # RTERM M E: (-29+NR) M: (-27+NR)
034388,000944: 26,2741 00035 TFFNP # LC P =H.H/MU M E: (-38+2NR) M: (-36+2NR)
034389,000945: 26,2742 56366 SQRT DDV # E: (-19+NR) M: (-18+NR)
034390,000946: # PUSH UP DEN E: (-19+NR) M: (-18+NR)
034391,000947: # USE DDV OVFL AS LIMITER (|COS| <1.0)
034392,000948: 26,2743 65542 SR1 ACOS
034393,000949: 26,2744 77616 DUMPVGAM RVQ
034394,000950: # CALLER MUST SUPPLY OWN SIGN ...
034395,000951: # 22W 27MS
034396,000952:
034397,000953: # SUBROUTINE NAME: TFF/TRIG (USED BY S61.2) DATE 01.17.67
034398,000954: # MOD NO: 0 LOG SECTION: P61-P67
034399,000955: # MOD BY: RR BAIRNSFATHER
034400,000956: # MOD NO: 1 MOD BY: RR BAIRNSFATHER DATE: 14 APR 67
034401,000957: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 21 MAR 68 ACCEPT DIFFERENT EARTH/MOON SCALE
034402,000958: # FUNCTIONAL DESCRIPTION: USED BY ENTRY DISPLAY TO CALCULATE SIN(THETA), COS(THETA) FROM DATA LEFT IN
034403,000959: # PDL BY TFF SUBROUTINES. THE EQNS ARE
034404,000960:
034405,000961: # COS(THETA) = 1-2 ABS(ARG) / (RN RTERM (1+X) )
034406,000962: # 2
034407,000963: # SIN(THETA) = SGN(ARG) SQRT(1-COS (THETA) )
034408,000964:
034409,000965: # WHERE THETA = TRANSFER ANGLE
034410,000966: # AND ARG = P Z ABS(Z) IF ALFA ZZ LEQ 1
034411,000967: # ARG = (P / ALFA) SGN(Q1 + R 1/Z) IF ALFA Z Z G 1
034412,000968: # AND ARG HAS BEEN AFFIXED WITH THE SIGN OF SIN(THETA).
034413,000969: # CALLING SEQUENCE: CALL
034414,000970: # TFF/TRIG
034415,000971: # PUSHLOC AT PDL+0, ARBITRARY IF NOT EQ 14D
034416,000972: # C(MPAC) UNSPECIFIED
034417,000973:
034418,000974: # SUBROUTINES CALLED: NONE
034419,000975: # NORMAL EXIT MODES: RVQ
034420,000976: # ALARMS: NONE
034421,000977: # OUTPUT: C(MPAC) = .5 SIN(THETA)
034422,000978: # CDELF/2 = .5 COS(THETA) (IN PDL 14D)
034423,000979: # PUSHLOC AT PDL+0
034424,000980: # ERASABLE INITIALIZATION REQUIRED:
034425,000981: # TFFX X LEFT BY CALCTFF OR CALCTPER
034426,000982: # TFFTEM E: (-59+2NR) ARG LEFT BY CALCTFF OR CALCTPER
034427,000983: # M: (-55+2NR) WHERE ARG = LCP ZZ SGN(DELF) OR ARG = LCP/ALFA SGN(DELF)
034428,000984: # NRTERM E: (-29+NR) M NORM LENGTH OF TERMINAL RADIUS LEFT BY CALCTFF OR CALCTPER
034429,000985: # M: (-27+NR)
034430,000986: # NRMAG E: (-29+NR) M NORM LENGTH OF PRESENT POSITION LEFT BY TFFCONIC
034431,000987: # M: (-27+NR)
034432,000988: # DEBRIS: QPRET, CDELF/2
034433,000989:
034434,000990: 27,2000 SETLOC P60S5
034435,000991: 27,2000 BANK
034436,000992: 27,2766 COUNT* $$/S61.2
034437,000993: 27,2766 70545 TFF/TRIG DLOAD SR1
034438,000994: 27,2767 00043 TFFX
034439,000995: 27,2770 41215 DAD DMP
034440,000996: 27,2771 15202 HIDPHALF
034441,000997: 27,2772 00041 NRMAG # RMAG M E: (-29+NR) M: (-27+NR)
034442,000998: 27,2773 55205 DMP BDDV
034443,000999: 27,2774 00021 NRTERM # RTERM M E: (-29+NR) M: (-27+NR)
034444,001000: 27,2775 00045 TFFTEM # P ZSQ OR P/ALFA E: (-59+2NR) M: (-55+2NR)
034445,001001: 27,2776 44246 ABS BDSU # THE SIGN IS FOR SDELF.
034446,001002: 27,2777 15202 HIDPHALF
034447,001003: 27,3000 00017 STORE CDELF/2 # .5 COS(THETA)
034448,001004: 27,3001 57516 DSQ DCOMP # KEEP HONEST FOR SQRT.
034449,001005: 27,3002 75415 DAD SQRT
034450,001006: 27,3003 15174 HIDP1/4
034451,001007: 27,3004 43565 DUMPTRIG SIGN RVQ
034452,001008: 27,3005 00045 TFFTEM # AFFIX SIGN(DELE/2)
034453,001009: # RETURN WITH .5 SIN(THETA) IN MPAC
034454,001010:
034455,001011: 04,2000 SETLOC P60S6
034456,001012: 04,2000 BANK
034457,001013:
034458,001014: 04,3206 COUNT* $$/S61.1
034459,001015: # 16W 15MS
034460,001016:
034461,001017: 04,3206 77620 DISPTARG STQ # C(MPAC) = TRGO ESTIMATE
034462,001018: 04,3207 03375 60GENRET
034463,001019: 04,3210 43205 DMP DAD # (TTE1 IS POSITIVE)
034464,001020: 04,3211 11227 KTETA1
034465,001021: 04,3212 03733 TTE1
034466,001022: 04,3213 37606 STCALL DTEAROT
034467,001023: 04,3214 46223 EARROT2
034468,001024: 04,3215 77624 CALL
034469,001025: 04,3216 11221 VRCALC
034470,001026: 04,3217 77650 GOTO
034471,001027: 04,3220 03375 60GENRET
034472,001028: 04,3221 50375 VRCALC VLOAD DOT
034473,001029: 04,3222 03542 URH
034474,001030: 04,3223 03474 RT
034475,001031: 04,3224 65512 SL2 ACOS
034476,001032: 04,3225 77616 RVQ
034477,001033: 04,3226 00052 05716 KTETA1 2DEC* .421844723 E2 B-14* # 1100 2PI/16384(163.84)
034478,001034: # END OF PROGRAM S61.2
034479,001035:
034480,001036: # PROGRAM DESCRIPTION S62.3 DATE 10JAN67
034481,001037: # MOD NO 1 LOG SECTION P60-P67
034482,001038: # MOD BY ZELDIN
034483,001039: # MOD NO: 2 MOD BY: RR BAIRNSFATHER DATE: 15 MAY 67 CHANGED TO REF COORDS.
034484,001040: # MOD NO: 3 MOD BY: RR BAIRNSFATHER DATE: 17 JAN 68 ALFAPAD CHANGES MADE.
034485,001041: # FUNCTIONAL DESCRIPTION
034486,001042: # COMPUTE DESIRED GIMBOL ANGLES FOR ENTRY ATTITUDE
034487,001043: # THE FOLLOWING TRAJECTORY TRIAD IS AVAILABLE IN MEMORY AND IS COMPUTED EACH 2 SECONDS BY CM/POSE IN
034488,001044: # REFERENCE COORDINATES (V = VELOCITY RELATIVE TO EARTH) :
034489,001045:
034490,001046: # UXA = -UNIT(V)
034491,001047: # UYA = UNIT(V*R)
034492,001048: # UZA = UXA*UYA
034493,001049:
034494,001050: # GENERATE A DESIRED BODY TRIAD FOR TRIMMED FLIGHT WITH RESPECT TO THE RELATIVE VELOCITY VECTOR, USING
034495,001051: # ROLL COMMAND AND TRIM ANGLE OF ATTACK:
034496,001052:
034497,001053: # UXD = UNIT(UYD*UXA) SIN(ALFATRIM) + UXA COS(ALFATRIM)
034498,001054: # UYD = UYA COS(ROLLC) + UZA SIN(ROLLC)
034499,001055: # UZD = UXD * UYD
034500,001056:
034501,001057: # USE THE DESIRED SET (IN REFERENCE COORDS) AND REFSMMAT TO CALL CALCGA AND OBTAIN GIMBAL ANGLES
034502,001058: # IN 2S,C IN MPAC, +2 AND THETAD, +2.
034503,001059:
034504,001060: # CALLING SEQUENCE
034505,001061: # L CALL
034506,001062: # L+1 S62.3
034507,001063: # NORMAL EXIT MODE
034508,001064: # RETURN VIA QPRET DIRECTLY FROM CALCGA.
034509,001065: # SUBROUTINES CALLED
034510,001066: # CALCGA
034511,001067: # ALARM OR ABORT MODES
034512,001068: # NONE
034513,001069: # ERASABLE INITIALIZATION REQUIRED
034514,001070: # ROLLC ROLL COMMAND DP 1:S COMP AT 1REV
034515,001071: # ALFAPAD SP 1S,C /180 LEFT BY PAD LOAD ALFATRIM IS NEGATIVE.
034516,001072: # UXA/2 REF COORDS LEFT BY CM/POSE
034517,001073: # UYA/2 REF COORDS LEFT BY CM/POSE
034518,001074: # UZA/2 REF COORDS LEFT BY CM/POSE
034519,001075: # OUTPUT
034520,001076: # CPHI GIMBAL ANGLES (O,I,M) 2:S COMP TP (O,I,M)/180
034521,001077: # DEBRIS
034522,001078: # QTEMP, QPRET, PUSHLIST
034523,001079:
034524,001080: 10,2000 SETLOC P60S4
034525,001081: 10,2000 BANK
034526,001082:
034527,001083: 10,2272 COUNT* $$/S62.3
034528,001084:
034529,001085: 10,2272 67201 S62.3 SETPD SLOAD
034530,001086: 10,2273 00001 0
034531,001087: 10,2274 03400 ALFAPAD # ALFATRIM /180, ALFA IS NEG.
034532,001088: 10,2275 41542 SR1 PUSH
034533,001089: 10,2276 65346 COS PDDL # XCH PDL, COS TO PDL0
034534,001090: 10,2277 65356 SIN PDDL # SIN TO PDL2
034535,001091: 10,2300 03347 ROLLC
034536,001092: 10,2301 74346 COS VXSC
034537,001093: 10,2302 03550 UYA/2 # REF COORDS
034538,001094: 10,2303 73525 PDDL SIN # PUSH VECTOR INTO PDL4,.9
034539,001095: 10,2304 03347 ROLLC
034540,001096: 10,2305 53361 VXSC VAD
034541,001097: 10,2306 03556 UZA/2 # REF COORDS
034542,001098: # VECTOR FROM PDL4, 9
034543,001099: 10,2307 77772 VSL1
034544,001100: 10,2310 02711 STORE YNB # = UYD REF COORDS
034545,001101:
034546,001102: 10,2311 76435 VXV VSL1
034547,001103: 10,2312 03542 UXA/2 # REF COORDS
034548,001104: 10,2313 65361 VXSC PDDL
034549,001105: # SIN TRIM FROM PDL2
034550,001106: # XCH PDL0 FOR COS TRIM
034551,001107: 10,2314 53361 VXSC VAD
034552,001108: 10,2315 03542 UXA/2 # REF COORDS
034553,001109: # FROM PDL0
034554,001110: 10,2316 77772 VSL1
034555,001111: 10,2317 02703 STORE XNB # X SC AXIS (.5 UNIT) REF COORDS
034556,001112:
034557,001113: 10,2320 76435 VXV VSL1
034558,001114: 10,2321 02711 YNB
034559,001115: 10,2322 26717 STOVL ZNB # Z SC IN REF COOR. SCALED AT 2
034560,001116: 10,2323 01720 REFSMMAT
034561,001117: 10,2324 26661 STOVL XSM
034562,001118: 10,2325 01726 REFSMMAT +6
034563,001119: 10,2326 26667 STOVL YSM
034564,001120: 10,2327 01734 REFSMMAT +12D
034565,001121: 10,2330 02675 STORE ZSM
034566,001122:
034567,001123: 10,2331 77650 GOTO
034568,001124: 10,2332 47303 CALCGA
034569,001125: # CALCGA WILL RETURN TO ORIGINAL CALLER
034570,001126: # VIA QPRET WITH 2,S COMP. ANGLES IN CPHI
End of include-file P61-P67.agc. Parent file is MAIN.agc