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. |
052664,000002: ## Copyright: Public domain.
052665,000003: ## Filename: INTEGRATION_INITIALIZATION.agc
052666,000004: ## Purpose: A section of Skylark revision 048.
052667,000005: ## It is part of the source code for the Apollo Guidance Computer (AGC)
052668,000006: ## for Skylab-2, Skylab-3, Skylab-4, and ASTP. No original listings of
052669,000007: ## this software are available; instead, this file was created via
052670,000008: ## disassembly of dumps of the core rope modules actually flown on
052671,000009: ## Skylab-2. Access to these modules was provided by the New Mexico
052672,000010: ## Museum of Space History.
052673,000011: ## Assembler: yaYUL
052674,000012: ## Contact: Ron Burkey <info@sandroid.org>.
052675,000013: ## Website: www.ibiblio.org/apollo/index.html
052676,000014: ## Mod history: 2023-09-04 MAS Created from Artemis 072.
052677,000015: ## 2024-03-04 MAS Updated for Skylark 48.
052678,000016:
052679,000017: # 1.0 INTRODUCTION
052680,000018: # ----------------
052681,000019:
052682,000020: # FROM A USERS POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
052683,000021: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
052684,000022: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
052685,000023: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
052686,000024: # SIDE THE LUNAR SPHERE OF INFLUENCE.
052687,000025:
052688,000026: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
052689,000027: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
052690,000028: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
052691,000029: # CALL TC INTSTALL.
052692,000030:
052693,000031: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
052694,000032: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
052695,000033: # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
052696,000034: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
052697,000035: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
052698,000036:
052699,000037: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
052700,000038: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
052701,000039: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
052702,000040: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
052703,000041:
052704,000042: # 2.0 GENERAL DESCRIPTION
052705,000043: # -----------------------
052706,000044:
052707,000045: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS---
052708,000046: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
052709,000047: # 2) INTEGRATES THE W-MATRIX
052710,000048: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
052711,000049:
052712,000050: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
052713,000051: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
052714,000052: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
052715,000053: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
052716,000054: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
052717,000055: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
052718,000056: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
052719,000057: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
052720,000058: # AND/OR STATE VECTOR.
052721,000059:
052722,000060: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
052723,000061: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
052724,000062: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
052725,000063:
052726,000064: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS.
052727,000065: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
052728,000066: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
052729,000067:
052730,000068: # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
052731,000069:
052732,000070: # 2.1 RESTARTS
052733,000071:
052734,000072: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
052735,000073: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
052736,000074: # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
052737,000075: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
052738,000076: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
052739,000077: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
052740,000078: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
052741,000079:
052742,000080: # 2.2 SCALING
052743,000081:
052744,000082: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
052745,000083: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTOR DEPENDS ON THE ORIGIN OF THE COORDINATE
052746,000084: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
052747,000085: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
052748,000086: # DIFFERENT SCALING.
052749,000087: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
052750,000088:
052751,000089: # 3.0 INPUT/OUTPUT
052752,000090: # ----------------
052753,000091:
052754,000092: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
052755,000093: # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
052756,000094: # FOR INTEGRVS, THE RCV,VCV, TET OF THE TEMPORARY STATE VECTOR MUST BE SET.
052757,000095:
052758,000096: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
052759,000097: # EARTH MOON
052760,000098: # 29 27
052761,000099: # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
052762,000100:
052763,000101: # 7 5
052764,000102: # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
052765,000103:
052766,000104: # 28 28
052767,000105: # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
052768,000106: # CUSTOMARILY 0, BUT NOTE LUNAR
052769,000107: # ORBIT DEPENDENCE ON REAL TIME.
052770,000108:
052771,000109: # 22 18
052772,000110: # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
052773,000111: # 0 IF TCCSM(LEM) = 0
052774,000112:
052775,000113: # 3 -1
052776,000114: # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
052777,000115: # 0 IF TCCSM(LEM) = 0
052778,000116: # 29 27
052779,000117: # RCVCSM(LEM) - CONIC POSITION METERS 2 2
052780,000118: # EQUALS RRECTCSM(LEM) IF
052781,000119: # TCCSM(LEM) = 0
052782,000120:
052783,000121: # 7 5
052784,000122: # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
052785,000123: # EQUALS VRECTCSM(LEM) IF
052786,000124: # TCCSM(LEM) = 0
052787,000125:
052788,000126: # 28 28
052789,000127: # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
052790,000128: # CUSTOMARILY 0
052791,000129:
052792,000130: # 1/2 17 16
052793,000131: # XKEPCSM(LEM) - ROOT OF KEPLERS EQUATION M 2 2
052794,000132: # 0 IF TCCSM(LEM) = 0
052795,000133:
052796,000134: # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
052797,000135: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
052798,000136: # LMOONFLG C = CSM, L = LM 0 0
052799,000137: # LMIDFLG 0,1 0,1
052800,000138:
052801,000139: # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
052802,000140:
052803,000141: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
052804,000142: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
052805,000143: # ROUTINE MUST BE PRESET.
052806,000144:
052807,000145: # OUTPUT
052808,000146: # AFTER EVERY CALL TO INTEGRATION
052809,000147: # EARTH MOON
052810,000148: # 29 29
052811,000149: # 0D RATT POSITION METERS 2 2
052812,000150: # 7 7
052813,000151: # 6D VATT VELOCITY M/CSEC 2 2
052814,000152: # 28 28
052815,000153: # 12D TAT TIME 2 2
052816,000154: # 29 27
052817,000155: # 14D RATT1 POSITION METERS 2 2
052818,000156: # 7 5
052819,000157: # 20D VATT1 VELOCITY M/CSEC 2 2
052820,000158: # 3 2 36 30
052821,000159: # 26D MU(P) MU M /CS 2 2
052822,000160:
052823,000161: # X1 MUTABLE ENTRY -2 -10D
052824,000162:
052825,000163: # X2 COORDINT
052826,000164: # X2 COORDINATE SYSTEM ORIGEN 0 2
052827,000165: # (THIS, NOT MOONFLAG, SHOULD BE
052828,000166: # USED TO DETERMINE ORIGIN.)
052829,000167:
052830,000168: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
052831,000169: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
052832,000170: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
052833,000171: # CALLING PROGRAM.
052834,000172:
052835,000173: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
052836,000174: # -------------------------------------
052837,000175:
052838,000176: # A) PRECISION ORBITAL INTEGRATION. CSMPREC,LEMPREC ENTRANCES
052839,000177: # L-X STORE TIME TO 95T5791T5 T 95 PUS L9ST (T4531)
052840,000178: # L CALL
052841,000179: # L+1 CSMPREC (OR LEMPREC)
052842,000180: # L+2 RETURN
052843,000181: # INPUT 28
052844,000182: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
052845,000183: # OUTPUT
052846,000184: # THE DATA LISTED IN SECTION 3.0 PLUS
052847,000185: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
052848,000186: # BODY... METERS B-29 ONLY IF MIDFLAG = DIMOFLAG = 1
052849,000187: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
052850,000188: # L-X STORE TIME IN PUSH LIST (TDEC1)
052851,000189: # L CALL
052852,000190: # L+1 CSMCONIC (OR LEMCONIC)
052853,000191: # INPUT/OUTPUT
052854,000192: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
052855,000193: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
052856,000194: # CALL
052857,000195: # INTSTALL
052858,000196: # VLOAD
052859,000197: # POSITION VECTOR
052860,000198: # STOVL RCV
052861,000199: # VELOCITY VECTOR
052862,000200: # STODL VCV
052863,000201: # TIME STATE VECTOR VALID
052864,000202: # STODL TET
052865,000203: # FINAL RADIUS
052866,000204: # STORE RFINAL
052867,000205: # SET(CLEAR) SET(CLEAR)
052868,000206: # INTYPFLAG
052869,000207: # MOONFLAG
052870,000208: # SET(CLEAR) DLOAD
052871,000209: # DESIRED TIME
052872,000210: # STCALL TDEC1
052873,000211: # INTEGRVS
052874,000212: # INPUT
052875,000213: # RCV POSITION VECTOR METERS
052876,000214: # VCV VELOCITY VECTOR M/CSEC
052877,000215: # TET TIME OF STATE VECTOR (MAY = 0) CSEC B-28
052878,000216: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
052879,000217: # (MAY BE INCREMENT IF TET=0)
052880,000218: # OUTPUT
052881,000219: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
052882,000220: # DEPENDING ON INTYPFLG.
052883,000221: # D) INTEGRATE STATE VECTOR. INTGRV ENTRANCE
052884,000222: # L-X STORE TIME IN PUSH LIST (TDEC1) (MAY BE DONE AFTER CALL TO INTSTALL)
052885,000223: # L-8 CALL
052886,000224: # L-7
052887,000225: # L-6 SET(CLEAR) SET(CLEAR)
052888,000226: # L-5 VINTFLAG 1=CSM, 0=LM
052889,000227: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
052890,000228: # L-3 SET(CLEAR)
052891,000229: # L-2 DIMOFLAG 1=W-MATRIX, 0=NO W-MATRIX
052892,000230: # L SET DLOAD
052893,000231: # L+1 STATEFLG DESIRE PERMANENT UPDATE
052894,000232: # L+2 FINAL RAD. OF STATE VECTOR
052895,000233: # L+3 STCALL RFINAL
052896,000234: # L+4 INTEGRV
052897,000235: # L CALL NORMAL USE-- WILL UPDATE STATE
052898,000236: # L+1 INTEGRV VECTOR IF DIMOFLAG=1. (STATEFLG IS
052899,000237: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
052900,000238: # IT IS USED.)
052901,000239: # INPUT
052902,000240: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
052903,000241: # OUTPUT
052904,000242: # SAME AS FOR PRECISION OR CONIC INTEGRATION
052905,000243: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
052906,000244: # THE PERMANENT STATE VECTOR REPRESENTATION.
052907,000245:
052908,000246: 04,2000 SETLOC INTINIT1
052909,000247: 04,2000 BANK
052910,000248: 04,3230 E3,1554 EBANK= RRECTCSM
052911,000249: 04,3230 COUNT* $$/INTIN
052912,000250: 04,3230 05415 STATEINT TC PHASCHNG
052913,000251: 04,3231 00052 OCT 00052
052914,000252: 04,3232 01,2036 2P5SPT4 = 2.5SPOT
052915,000253: 04,3232 35061 CAF PRIO5
052916,000254: 04,3233 05150 TC FINDVAC
052917,000255: 04,3234 E3,1554 EBANK= RRECTCSM
052918,000256: 04,3234 03237 10063 2CADR STATINT1
052919,000257:
052920,000258: 04,3236 05327 TC TASKOVER
052921,000259: 04,3237 06006 STATINT1 TC INTPRET
052922,000260: 04,3240 47014 BON RTB
052923,000261: 04,3241 04712 QUITFLAG
052924,000262: 04,3242 11277 NOINT # NO STATEINT IF V96
052925,000263: 04,3243 45563 LOADTIME
052926,000264: 04,3244 00041 STORE TDEC1
052927,000265: 04,3245 45014 CLEAR CALL
052928,000266: 04,3246 04274 V96ONFLG
052929,000267: 04,3247 11720 INTSTALL
052930,000268: 04,3250 45014 SET CALL
052931,000269: 04,3251 01076 NODOFLAG
052932,000270: 04,3252 11272 SETIFLGS
052933,000271: 04,3253 52014 SET GOTO # INHIBIT BACKWARDS INTEGRATION
052934,000272: 04,3254 01466 POOFLAG
052935,000273: 04,3255 36000 STATEUP
052936,000274: 04,3256 00003 25140 600SECS 2DEC 60000 B-28
052937,000275:
052938,000276: 04,3260 77414 ENDINT CLEAR EXIT
052939,000277: 04,3261 01672 STATEFLG
052940,000278: 04,3262 05415 TC PHASCHNG
052941,000279: 04,3263 20032 OCT 20032
052942,000280: 04,3264 01,2033 2P3SPT1 = 2.3SPOT
052943,000281: 04,3264 00006 EXTEND
052944,000282: 04,3265 33257 DCA 600SECS
052945,000283: 04,3266 05345 TC LONGCALL
052946,000284: 04,3267 E3,1554 EBANK= RRECTHIS
052947,000285: 04,3267 03230 10063 2CADR STATEINT
052948,000286:
052949,000287: 04,3271 05220 TC ENDOFJOB
052950,000288: 04,3272 43014 SETIFLGS SET CLEAR
052951,000289: 04,3273 01472 STATEFLG
052952,000290: 04,3274 01673 INTYPFLG
052953,000291: 04,3275 43414 CLEAR RVQ
052954,000292: 04,3276 01676 DIM0FLAG
052955,000293: 04,3277 77776 NOINT EXIT
052956,000294: 04,3300 05415 TC PHASCHNG
052957,000295: 04,3301 00002 OCT 2
052958,000296:
052959,000297: 04,3302 07722 TC DOWNFLAG
052960,000298: 04,3303 00221 ADRES QUITFLAG
052961,000299:
052962,000300: 04,3304 05220 TC ENDOFJOB
052963,000301:
052964,000302: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
052965,000303:
052966,000304: # CALLING SEQUENCE
052967,000305: # L CALL
052968,000306: # L+1 ATOPCSM
052969,000307:
052970,000308: # NORMAL EXIT AT L+2
052971,000309:
052972,000310: 04,3305 47020 ATOPCSM STQ RTB
052973,000311: 04,3306 00051 S2
052974,000312: 04,3307 11314 MOVEACSM
052975,000313: 04,3310 77624 CALL
052976,000314: 04,3311 20226 SVDWN1
052977,000315: 04,3312 77650 GOTO
052978,000316: 04,3313 00051 S2
052979,000317: 04,3314 03373 MOVEACSM TC SETBANK
052980,000318: 04,3315 55500 +1 TS DIFEQCNT # INITIALIZE INDEX
052981,000319: 04,3316 51500 INDEX DIFEQCNT
052982,000320: 04,3317 31502 CA RRECT
052983,000321: 04,3320 51500 INDEX DIFEQCNT
052984,000322: 04,3321 55554 TS RRECTCSM
052985,000323: 04,3322 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
052986,000324: 04,3323 13315 TCF MOVEACSM +1 # NO-LOOP
052987,000325: 04,3324 06030 TC DANZIG # COMPLETE- RETURN
052988,000326:
052989,000327:
052990,000328: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
052991,000329:
052992,000330: # CALLING SEQUENCE
052993,000331: # L CALL
052994,000332: # PTOACSM
052995,000333:
052996,000334: # NORMAL EXIT AT L+2
052997,000335:
052998,000336: 04,3325 43434 PTOACSM RTB RVQ
052999,000337: 04,3326 11327 MOVEPCSM
053000,000338: 04,3327 03373 MOVEPCSM TC SETBANK
053001,000339: 04,3330 55500 +1 TS DIFEQCNT
053002,000340: 04,3331 51500 INDEX DIFEQCNT
053003,000341: 04,3332 31554 CA RRECTCSM
053004,000342: 04,3333 51500 INDEX DIFEQCNT
053005,000343: 04,3334 55502 TS RRECT
053006,000344: 04,3335 11500 CCS DIFEQCNT
053007,000345: 04,3336 13330 TCF MOVEPCSM +1
053008,000346: 04,3337 06030 TC DANZIG
053009,000347:
053010,000348: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
053011,000349: 04,3340 47020 ATOPLEM STQ RTB
053012,000350: 04,3341 00051 S2
053013,000351: 04,3342 11347 MOVEALEM
053014,000352: 04,3343 77624 CALL
053015,000353: 04,3344 20245 SVDWN2
053016,000354: 04,3345 77650 GOTO
053017,000355: 04,3346 00051 S2
053018,000356: 04,3347 03373 MOVEALEM TC SETBANK
053019,000357: 04,3350 55500 +1 TS DIFEQCNT
053020,000358: 04,3351 51500 INDEX DIFEQCNT
053021,000359: 04,3352 31502 CA RRECT
053022,000360: 04,3353 51500 INDEX DIFEQCNT
053023,000361: 04,3354 55626 TS RRECTLEM
053024,000362: 04,3355 11500 CCS DIFEQCNT
053025,000363: 04,3356 13350 TCF MOVEALEM +1
053026,000364: 04,3357 06030 TC DANZIG
053027,000365:
053028,000366:
053029,000367: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
053030,000368:
053031,000369: 04,3360 43434 PTOALEM RTB RVQ
053032,000370: 04,3361 11362 MOVEPLEM
053033,000371: 04,3362 03373 MOVEPLEM TC SETBANK
053034,000372: 04,3363 55500 +1 TS DIFEQCNT
053035,000373: 04,3364 51500 INDEX DIFEQCNT
053036,000374: 04,3365 31626 CA RRECTLEM
053037,000375: 04,3366 51500 INDEX DIFEQCNT
053038,000376: 04,3367 55502 TS RRECT
053039,000377: 04,3370 11500 CCS DIFEQCNT
053040,000378: 04,3371 13363 TCF MOVEPLEM +1
053041,000379: 04,3372 06030 TC DANZIG
053042,000380:
053043,000381:
053044,000382: 04,3373 33377 SETBANK CAF INTBANK
053045,000383: 04,3374 54006 TS BBANK
053046,000384: 04,3375 33755 CAF FORTYONE
053047,000385: 04,3376 00002 TC Q
053048,000386: 04,3377 E3,1554 EBANK= RRECTCSM
053049,000387: 04,3377 10063 INTBANK BBCON INTEGRV
053050,000388:
053051,000389:
053052,000390: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
053053,000391: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
053054,000392:
053055,000393: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
053056,000394: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
053057,000395: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
053058,000396: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
053059,000397: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
053060,000398: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
053061,000399:
053062,000400: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
053063,000401: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
053064,000402: # CSMPREC CSMCONIC LEMPREC LEMCONIC
053065,000403: # VINTFLAG SET SET CLEAR CLEAR
053066,000404: # INTYPFLG CLEAR SET CLEAR SET
053067,000405: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
053068,000406:
053069,000407: # CALLING SEQUENCE
053070,000408: # L-X STORE TDEC1
053071,000409: # L CALL (STCALL TDEC1)
053072,000410: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
053073,000411:
053074,000412: # NORMAL EXIT TO L+2
053075,000413:
053076,000414: # SUBROUTINES CALLED
053077,000415: # INTEGRV1
053078,000416: # PRECOUT FOR CSMPREC AND LEMPREC
053079,000417: # CONICOUT FOR CSMCONIC AND LEMCONIC
053080,000418:
053081,000419:
053082,000420: # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
053083,000421: # INPUT
053084,000422: # TDEC1 TIME TO INTEGRATE TO . CSECS B-28
053085,000423:
053086,000424: 04,3400 45020 CSMPREC STQ CALL
053087,000425: 04,3401 00046 X1
053088,000426: 04,3402 11720 INTSTALL
053089,000427: 04,3403 43130 SXA,1 SET
053090,000428: 04,3404 02115 IRETURN
053091,000429: 04,3405 01474 VINTFLAG
053092,000430:
053093,000431: 04,3406 43014 IFLAGP SET CLEAR
053094,000432: 04,3407 01467 PRECIFLG
053095,000433: 04,3410 01676 DIM0FLAG
053096,000434: 04,3411 77614 CLRGO
053097,000435: 04,3412 01633 INTYPFLG
053098,000436: 04,3413 11462 INTEGRV1
053099,000437: 04,3414 45020 LEMPREC STQ CALL
053100,000438: 04,3415 00046 X1
053101,000439: 04,3416 11720 INTSTALL
053102,000440: 04,3417 43130 SXA,1 CLRGO
053103,000441: 04,3420 02115 IRETURN
053104,000442: 04,3421 01634 VINTFLAG
053105,000443: 04,3422 11406 IFLAGP
053106,000444:
053107,000445: 04,3423 45020 CSMCONIC STQ CALL
053108,000446: 04,3424 00046 X1
053109,000447: 04,3425 11720 INTSTALL
053110,000448: 04,3426 43130 SXA,1 SET
053111,000449: 04,3427 02115 IRETURN
053112,000450: 04,3430 01474 VINTFLAG
053113,000451: 04,3431 43014 IFLAGC CLEAR SETGO
053114,000452: 04,3432 01676 DIM0FLAG
053115,000453: 04,3433 01433 INTYPFLG
053116,000454: 04,3434 11462 INTEGRV1
053117,000455: 04,3435 45020 LEMCONIC STQ CALL
053118,000456: 04,3436 00046 X1
053119,000457: 04,3437 11720 INTSTALL
053120,000458: 04,3440 43130 SXA,1 CLRGO
053121,000459: 04,3441 02115 IRETURN
053122,000460: 04,3442 01634 VINTFLAG
053123,000461: 04,3443 11431 IFLAGC
053124,000462:
053125,000463: 04,3444 44014 INTEGRVS SET STQ
053126,000464: 04,3445 01467 PRECIFLG
053127,000465: 04,3446 02115 IRETURN
053128,000466: 04,3447 77775 VLOAD
053129,000467: 04,3450 15726 ZEROVEC
053130,000468: 04,3451 01521 STORE TDELTAV
053131,000469: 04,3452 35527 STCALL TNUV
053132,000470: 04,3453 23437 RECTIFY
053133,000471: 04,3454 43014 CLEAR SETGO
053134,000472: 04,3455 01676 DIM0FLAG
053135,000473: 04,3456 04022 NEWIFLG
053136,000474: 04,3457 11473 ALOADED
053137,000475:
053138,000476: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER,
053139,000477: # NORMALLY THE NAVIGATION PROGRAM, TO SET THE INTEG. FLAGS. THE ROUTINE
053140,000478: # IS ENTERED AT INTEGRV1 BY CSMPREC ET.AL. AND AT ALOADED BY INTEGRVS.
053141,000479: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
053142,000480: # PROGRAM FOR PRECISION OR CONIC
053143,000481:
053144,000482: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
053145,000483: # SETTING ANY FLAGS.
053146,000484: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
053147,000485: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
053148,000486: # INTYPFLG
053149,000487: # DIM0FLAG
053150,000488:
053151,000489: # CALLING SEQUENCE
053152,000490: # L-X CALL
053153,000491: # L-Y INTSTALL
053154,000492: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
053155,000493: # AND DIM0FLAG IS CLEAR.
053156,000494: # L CALL
053157,000495: # L+1 INTEGRV
053158,000496:
053159,000497: # INITIALIZATION
053160,000498: # FLAGS AS ABOVE
053161,000499: # STORE TIME TO INTEGRATE TO IN TDEC1
053162,000500:
053163,000501: # OUTPUT
053164,000502: # RATT AS
053165,000503: # VATT DEFINED
053166,000504: # TAT BEFORE
053167,000505:
053168,000506:
053169,000507: 04,3460 77620 INTEGRV STQ
053170,000508: 04,3461 02115 IRETURN
053171,000509: 04,3462 77614 INTEGRV1 SET
053172,000510: 04,3463 04062 NEWIFLG
053173,000511: 04,3464 77731 INTEGRV2 SSP
053174,000512: 04,3465 00053 QPRET
053175,000513: 04,3466 11473 ALOADED
053176,000514: 04,3467 52014 BON GOTO
053177,000515: 04,3470 01714 VINTFLAG
053178,000516: 04,3471 11325 PTOACSM
053179,000517: 04,3472 11360 PTOALEM
053180,000518: 04,2000 SETLOC INTINIT1
053181,000519: 04,2000 BANK
053182,000520: 04,3473 COUNT* $$/INTIN
053183,000521: 04,3473 40145 ALOADED DLOAD BOV
053184,000522: 04,3474 00041 TDEC1
053185,000523: 04,3475 11476 +1
053186,000524: 04,3476 00740 STORE TDEC
053187,000525: 04,3477 52014 BOFF GOTO
053188,000526: 04,3500 01753 INTYPFLG
053189,000527: 04,3501 11577 TESTLOOP
053190,000528: 04,3502 11563 RVCON
053191,000529: 04,3503 77414 A-PCHK BOFCLR EXIT
053192,000530: 04,3504 01652 STATEFLG
053193,000531: 04,3505 11524 RECTOUT
053194,000532: 04,3506 05415 TC PHASCHNG
053195,000533: 04,3507 04022 OCT 04022
053196,000534: 04,3510 07710 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
053197,000535: 04,3511 00230 ADRES REINTFLG # INTSTALL AND INTWAKE
053198,000536: 04,3512 06006 TC INTPRET
053199,000537: 04,3513 77731 SSP
053200,000538: 04,3514 00053 QPRET
053201,000539: 04,3515 11522 PHEXIT
053202,000540: 04,3516 52014 BON GOTO
053203,000541: 04,3517 01714 VINTFLAG
053204,000542: 04,3520 11305 ATOPCSM
053205,000543: 04,3521 11340 ATOPLEM
053206,000544: 04,3522 77624 PHEXIT CALL
053207,000545: 04,3523 57046 GRP2PC
053208,000546: 04,3524 45001 RECTOUT SETPD CALL
053209,000547: 04,3525 00001 0
053210,000548: 04,3526 23437 RECTIFY
053211,000549: 04,3527 63375 VLOAD PDVL # RATT TO PD0
053212,000550: 04,3530 01503 RRECT
053213,000551: 04,3531 01511 VRECT
053214,000552: 04,3532 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
053215,000553: 04,3533 01517 TET
053216,000554: 04,3534 01503 RRECT
053217,000555: 04,3535 65315 PDVL PDDL
053218,000556: 04,3536 01511 VRECT
053219,000557: 04,3537 22722 MUEARTH
053220,000558: 04,3540 76006 PUSH AXT,1
053221,000559: 04,3541 77775 DEC -2 B-14
053222,000560: 04,3542 40001 INTEXIT SETPD BOV
053223,000561: 04,3543 00001 0
053224,000562: 04,3544 11545 +1
053225,000563: 04,3545 43014 CLEAR CLEAR
053226,000564: 04,3546 04675 MIDAVFLG
053227,000565: 04,3547 01672 STATEFLG
053228,000566: 04,3550 43014 CLEAR CLEAR
053229,000567: 04,3551 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
053230,000568: 04,3552 01667 PRECIFLG
053231,000569: 04,3553 67374 AXT,2 SLOAD
053232,000570: 04,3554 00000 0
053233,000571: 04,3555 02116 IRETURN
053234,000572: 04,3556 77776 EXIT
053235,000573: 04,3557 30154 CA MPAC
053236,000574: 04,3560 50120 INDEX FIXLOC
053237,000575: 04,3561 54052 TS QPRET
053238,000576: 04,3562 03731 TC INTWAKE
053239,000577:
053240,000578: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
053241,000579: # VELOCITY FOR THE INTERVAL (TET-TDEC)
053242,000580:
053243,000581: 04,3563 45345 RVCON DLOAD DSU
053244,000582: 04,3564 00740 TDEC
053245,000583: 04,3565 01517 TET
053246,000584: 04,3566 36171 STCALL TAU.
053247,000585: 04,3567 23437 RECTIFY
053248,000586: 04,3570 77624 CALL
053249,000587: 04,3571 22731 KEPPREP
053250,000588: 04,3572 43345 DLOAD DAD
053251,000589: 04,3573 01551 TC
053252,000590: 04,3574 01517 TET
053253,000591: 04,3575 35517 STCALL TET
053254,000592: 04,3576 11524 RECTOUT
053255,000593:
053256,000594: 04,3577 43014 TESTLOOP BOF CLRGO
053257,000595: 04,3600 04752 QUITFLAG
053258,000596: 04,3601 11604 +3
053259,000597: 04,3602 01632 STATEFLG
053260,000598: 04,3603 11542 INTEXIT # STOP INTEGRATION
053261,000599: 04,3604 77201 +3 SETPD VLOAD
053262,000600: 04,3605 00013 10D
053263,000601: 04,3606 01535 RCV
053264,000602: 04,3607 41446 ABVAL PUSH
053265,000603: 04,3610 74405 NORFINAL DMP SR1R
053266,000604: 04,3611 00043 34D
053267,000605: 04,3612 75471 DDV SQRT
053268,000606: 04,3613 22722 MUEARTH
053269,000607: 04,3614 54205 DMP SR
053270,000608: 04,3615 23732 .3D
053271,000609: 04,3616 20610 7 # DT IS TRUNCATED TO A MULTIPLE
053272,000610: 04,3617 54345 DLOAD SL
053273,000611: 04,3620 00155 MPAC
053274,000612: 04,3621 20220 15D # OF 128 CSECS.
053275,000613: 04,3622 40006 PUSH BOV
053276,000614: 04,3623 11650 MAXDT
053277,000615: 04,3624 50021 BDSU BMN
053278,000616: 04,3625 11717 DT/2MAX
053279,000617: 04,3626 11650 MAXDT
053280,000618: 04,3627 45345 DT/2COMP DLOAD DSU
053281,000619: 04,3630 00740 TDEC
053282,000620: 04,3631 01517 TET
053283,000621: 04,3632 54234 RTB SL
053284,000622: 04,3633 45617 SGNAGREE
053285,000623: 04,3634 20211 8D
053286,000624: 04,3635 02173 STORE DT/2 # B-19
053287,000625: 04,3636 51400 BOV ABS
053288,000626: 04,3637 11654 GETMAXDT
053289,000627: 04,3640 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
053290,000628: 04,3641 00015 12D
053291,000629: 04,3642 11660 P00HCHK
053292,000630: 04,3643 75345 USEMAXDT DLOAD SIGN
053293,000631: 04,3644 00015 12D
053294,000632: 04,3645 02173 DT/2
053295,000633: 04,3646 36173 STCALL DT/2
053296,000634: 04,3647 11660 P00HCHK
053297,000635: 04,3650 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
053298,000636: 04,3651 11717 DT/2MAX
053299,000637: 04,3652 77650 GOTO
053300,000638: 04,3653 11627 DT/2COMP
053301,000639: 04,3654 77634 GETMAXDT RTB
053302,000640: 04,3655 45742 SIGNMPAC
053303,000641: 04,3656 36173 STCALL DT/2
053304,000642: 04,3657 11643 USEMAXDT
053305,000643: 04,3660 51545 P00HCHK DLOAD ABS
053306,000644: 04,3661 02173 DT/2
053307,000645: 04,3662 50025 DSU BMN
053308,000646: 04,3663 11715 DT/2MIN
053309,000647: 04,3664 11503 A-PCHK
053310,000648: 04,3665 43014 BOFF BON
053311,000649: 04,3666 01746 POOFLAG # IS BACKWARDS INTEGRATION INHIBITED
053312,000650: 04,3667 23367 TIMESTEP # NO
053313,000651: 04,3670 01707 PRECIFLG # WAS THIS CALL VIA CSM(LEM)PREC
053314,000652: 04,3671 23367 TIMESTEP # YES
053315,000653: 04,3672 45345 DLOAD DSU
053316,000654: 04,3673 02173 DT/2
053317,000655: 04,3674 00015 12D
053318,000656: 04,3675 43040 BMN BOFCLR
053319,000657: 04,3676 11503 A-PCHK
053320,000658: 04,3677 04242 NEWIFLG
053321,000659: 04,3700 23367 TIMESTEP
053322,000660: 04,3701 45345 DLOAD DSU
053323,000661: 04,3702 00740 TDEC
053324,000662: 04,3703 01517 TET
053325,000663: 04,3704 77640 BMN # NO BACKWARD INTEGRATION
053326,000664: 04,3705 11542 INTEXIT
053327,000665: 04,3706 40525 PDDL SR4
053328,000666: 04,3707 02173 DT/2 # IS 4(DT) LS (TDEC - TET)
053329,000667: 04,3710 44322 SR2R BDSU # NO
053330,000668: 04,3711 52040 BMN GOTO
053331,000669: 04,3712 11542 INTEXIT
053332,000670: 04,3713 23367 TIMESTEP
053333,000671: 04,3714 00000 01400 DT/2MIN 2DEC 3 B-20
053334,000672: 04,3716 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
053335,000673: 04,3720 77776 INTSTALL EXIT
053336,000674: 04,3721 30106 +1 CA FLGWRD10
053337,000675: 04,3722 74346 MASK PRIO30
053338,000676: 04,3723 00006 EXTEND
053339,000677: 04,3724 13763 BZF OKTOGRAB # YES
053340,000678: 04,3725 33767 CAF WAKESTAL
053341,000679: 04,3726 05176 TC JOBSLEEP
053342,000680: 04,3727 77776 INTWAKE0 EXIT
053343,000681: 04,3730 13751 TCF INTWAKE1
053344,000682:
053345,000683: 04,3731 40106 INTWAKE CS FLGWRD10 # IS THIS INTSTALLED ROUTINE TO BE
053346,000684: 04,3732 74765 MASK REINTBIT # RESTARTED
053347,000685: 04,3733 10000 CCS A
053348,000686: 04,3734 03751 TC INTWAKE1 # NO
053349,000687:
053350,000688: 04,3735 50120 INDEX FIXLOC
053351,000689: 04,3736 30052 CA QPRET
053352,000690: 04,3737 55251 TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
053353,000691:
053354,000692: 04,3740 05415 TC PHASCHNG
053355,000693: 04,3741 04022 OCT 04022
053356,000694:
053357,000695: 04,3742 31251 CA TBASE2
053358,000696: 04,3743 50120 INDEX FIXLOC
053359,000697: 04,3744 54052 TS QPRET
053360,000698:
053361,000699: 04,3745 34765 CAF REINTBIT
053362,000700: 04,3746 70106 MASK FLGWRD10
053363,000701: 04,3747 00006 EXTEND
053364,000702: 04,3750 13765 BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
053365,000703:
053366,000704: 04,3751 33767 INTWAKE1 CAF WAKESTAL
053367,000705: 04,3752 05202 TC JOBWAKE
053368,000706: 04,3753 10064 CCS LOCCTR
053369,000707: 04,3754 13751 TCF INTWAKE1
053370,000708: 04,3755 00051 FORTYONE DEC 41 B-14
053371,000709: 04,3756 44346 CS PRIO30
053372,000710: 04,3757 70106 MASK FLGWRD10
053373,000711: 04,3760 54106 TS FLGWRD10 # RELEASE STALL AREA
053374,000712: 04,3761 00003 RELINT
053375,000713: 04,3762 13765 TCF GOBAC
053376,000714: 04,3763 34764 OKTOGRAB CAF INTFLBIT
053377,000715: 04,3764 26106 ADS FLGWRD10
053378,000716: 04,3765 06006 GOBAC TC INTPRET
053379,000717: 04,3766 77616 RVQ
053380,000718: 04,3767 11721 WAKESTAL CADR INTSTALL +1
053381,000719: # AVETOMID
053382,000720:
053383,000721: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
053384,000722: # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
053385,000723: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
053386,000724:
053387,000725: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLG IS
053388,000726: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
053389,000727:
053390,000728: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
053391,000729:
053392,000730: # FINALLY TRKMKCNT IS ZEROED
053393,000731:
053394,000732: 35,2000 SETLOC INTINIT2
053395,000733: 35,2000 BANK
053396,000734:
053397,000735: 35,3556 COUNT* $$/INTIN
053398,000736: 35,3556 43020 AVETOMID STQ BON
053399,000737: 35,3557 02200 EGRESS
053400,000738: 35,3560 02716 RENDWFLG
053401,000739: 35,3561 73607 INT/W # W-MATRIX VALID, GO INTEGRATE IT
053402,000740:
053403,000741: 35,3562 45174 SETCOAST AXT,2 CALL # NOW MOVE PROPERLY SCALED RN,VN AND
053404,000742: 35,3563 00000 0 # PIPTIME TO INTEGRATION ERASABLES.
053405,000743: 35,3564 11720 INTSTALL
053406,000744: 35,3565 77214 CLEAR VLOAD
053407,000745: 35,3566 01674 VINTFLAG
053408,000746: 35,3567 01022 RN
053409,000747: 35,3570 01503 STORE RRECT
053410,000748: 35,3571 15535 STODL RCV
053411,000749: 35,3572 01036 PIPTIME
053412,000750: 35,3573 00041 STORE TDEC1
053413,000751: 35,3574 25517 STOVL TET
053414,000752: 35,3575 01030 VN
053415,000753: 35,3576 77624 CALL
053416,000754: 35,3577 23452 MINIRECT # FINISH SETTING UP STATE VECTOR
053417,000755: 35,3600 45034 RTB CALL
053418,000756: 35,3601 11314 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
053419,000757: 35,3602 11272 SETIFLGS
053420,000758:
053421,000759: 35,3603 77624 CALL # NOW DO LM
053422,000760: 35,3604 11460 INTEGRV
053423,000761: 35,3605 77650 GOTO
053424,000762: 35,3606 02200 EGRESS
053425,000763: 35,3607 45145 INT/W DLOAD CALL
053426,000764: 35,3610 01036 PIPTIME # INTEGRATE W THRU BURN
053427,000765: 35,3611 11720 INTSTALL
053428,000766: 35,3612 43014 SET SET
053429,000767: 35,3613 01476 DIM0FLAG # DO W-MATRIX
053430,000768: 35,3614 04476 AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
053431,000769: 35,3615 77614 SET
053432,000770: 35,3616 01474 VINTFLAG
053433,000771: 35,3617 34041 STCALL TDEC1
053434,000772: 35,3620 11460 INTEGRV
053435,000773: 35,3621 77650 GOTO
053436,000774: 35,3622 73562 SETCOAST
053437,000775:
053438,000776: # MIDTOAV1
053439,000777:
053440,000778: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
053441,000779: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
053442,000780: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
053443,000781: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
053444,000782: # IS DONE AS IT IS FOR MIDTOAV2.
053445,000783: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
053446,000784:
053447,000785: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
053448,000786: # TO THE RETURN ADDRESS
053449,000787:
053450,000788: # IN EITHER CASE, BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
053451,000789: # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
053452,000790: # TION TIME AND MPAC IS SET TO THE DELTA TIME---
053453,000791: # TAT MINUS CURRENT TIME.
053454,000792:
053455,000793:
053456,000794: # MIDTOAV2
053457,000795:
053458,000796: # THIS ROUTINE INTEGRATES THE CSM STATE VECTOR TO CURRENT TIME PLUS
053459,000797: # INCREMENTS OF TIMEDELT SUCH THAT THE DIFFERENCE BETWEEN CURRENT TIME
053460,000798: # AND THE STATE VECTOR TIME AT THE END OF THE LAST STEP IS AT LEAST 5.6
053461,000799: # SECS.
053462,000800: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
053463,000801: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
053464,000802:
053465,000803: 13,2000 SETLOC INTINIT
053466,000804: 13,2000 BANK
053467,000805: 13,3535 COUNT* $$/R41
053468,000806: 13,3535 0766 EBANK= IRETURN1
053469,000807: 13,3535 45020 MIDTOAV2 STQ CALL
053470,000808: 13,3536 00766 IRETURN1
053471,000809: 13,3537 11720 INTSTALL
053472,000810: 13,3540 43145 DLOAD CLEAR
053473,000811: 13,3541 27672 TIMEDELT
053474,000812: 13,3542 04674 MID1FLAG
053475,000813: 13,3543 37446 STCALL T-TO-ADD
053476,000814: 13,3544 27561 ENTMID2
053477,000815:
053478,000816: 13,3545 45020 MIDTOAV1 STQ CALL
053479,000817: 13,3546 00766 IRETURN1
053480,000818: 13,3547 11720 INTSTALL
053481,000819: 13,3550 47014 SET RTB
053482,000820: 13,3551 04474 MID1FLAG
053483,000821: 13,3552 45563 LOADTIME
053484,000822: 13,3553 44215 DAD BDSU # INITIAL CHECK, IS TDEC1 IN THE FUTURE.
053485,000823: 13,3554 27672 TIMEDELT
053486,000824: 13,3555 00041 TDEC1
053487,000825: 13,3556 45044 BPL CALL
053488,000826: 13,3557 27565 ENTMID1
053489,000827: 13,3560 27655 NOTIME # NO SET ALARM.SWITCH TO MIDTOAV2
053490,000828:
053491,000829: 13,3561 43234 ENTMID2 RTB DAD
053492,000830: 13,3562 45563 LOADTIME
053493,000831: 13,3563 03446 T-TO-ADD
053494,000832: 13,3564 00041 STORE TDEC1
053495,000833:
053496,000834: 13,3565 45014 ENTMID1 CLEAR CALL
053497,000835: 13,3566 01676 DIM0FLAG # NO W-MATRIX
053498,000836: 13,3567 36026 THISVINT
053499,000837: 13,3570 43014 CLEAR SET
053500,000838: 13,3571 01673 INTYPFLG
053501,000839: 13,3572 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
053502,000840: 13,3573 77624 CALL
053503,000841: 13,3574 11460 INTEGRV # GO INTEGRATE
053504,000842: 13,3575 77775 VLOAD
053505,000843: 13,3576 00001 RATT
053506,000844: 13,3577 25063 STOVL RN1
053507,000845: 13,3600 00007 VATT
053508,000846: 13,3601 15071 STODL VN1
053509,000847: 13,3602 00015 TAT
053510,000848: 13,3603 01077 STORE PIPTIME1
053511,000849: 13,3604 77776 EXIT
053512,000850:
053513,000851: 13,3605 00004 INHINT
053514,000852: 13,3606 00006 EXTEND
053515,000853: 13,3607 40025 DCS TIME2
053516,000854: 13,3610 20155 DAS MPAC
053517,000855: 13,3611 07226 TC TPAGREE
053518,000856:
053519,000857: 13,3612 30766 CA IRETURN1
053520,000858: 13,3613 04671 TC BANKJUMP
053521,000859: 13,3614 47014 CKMID2 BOF RTB
053522,000860: 13,3615 04754 MID1FLAG
053523,000861: 13,3616 27633 MID2
053524,000862: 13,3617 45563 LOADTIME
053525,000863: 13,3620 44215 DAD BDSU
053526,000864: 13,3621 27672 TIMEDELT
053527,000865: 13,3622 00740 TDEC
053528,000866: 13,3623 45044 BPL CALL
053529,000867: 13,3624 11577 TESTLOOP # YES
053530,000868: 13,3625 27655 NOTIME
053531,000869:
053532,000870: 13,3626 43234 TIMEINC RTB DAD
053533,000871: 13,3627 45563 LOADTIME
053534,000872: 13,3630 03446 T-TO-ADD
053535,000873: 13,3631 34740 STCALL TDEC
053536,000874: 13,3632 11577 TESTLOOP
053537,000875:
053538,000876: 13,3633 45345 MID2 DLOAD DSU
053539,000877: 13,3634 00740 TDEC
053540,000878: 13,3635 01517 TET
053541,000879: 13,3636 45246 ABS DSU
053542,000880: 13,3637 27670 3CSECS
053543,000881: 13,3640 77644 BPL
053544,000882: 13,3641 27626 TIMEINC
053545,000883:
053546,000884: 13,3642 44234 RTB BDSU # SEE IF 5.6 SECS. AVAILABLE TO CALLER.
053547,000885: 13,3643 45563 LOADTIME
053548,000886: 13,3644 01517 TET
053549,000887: 13,3645 51025 DSU BPL
053550,000888: 13,3646 27674 5.6SECS
053551,000889: 13,3647 11503 A-PCHK # YES,GET OUT.
053552,000890:
053553,000891: 13,3650 43345 DLOAD DAD # NO, ADD TIMEDELT TO T-TO-ADD AND TRY
053554,000892: 13,3651 03446 T-TO-ADD # AGAIN.
053555,000893: 13,3652 27672 TIMEDELT
053556,000894: 13,3653 37446 STCALL T-TO-ADD
053557,000895: 13,3654 27626 TIMEINC
053558,000896:
053559,000897: 13,3655 77414 NOTIME CLEAR EXIT # TOO LATE
053560,000898: 13,3656 04674 MID1FLAG
053561,000899: 13,3657 24766 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
053562,000900: 13,3660 05644 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
053563,000901: 13,3661 01703 OCT 1703 # TIG WILL BE SLIPPED...
053564,000902: 13,3662 06006 TC INTPRET
053565,000903: 13,3663 77745 DLOAD
053566,000904: 13,3664 27672 TIMEDELT
053567,000905: 13,3665 03446 STORE T-TO-ADD
053568,000906: 13,3666 77616 RVQ
053569,000907:
053570,000908: 13,3667 00000 00003 3CSECS 2DEC 3 B-28
053571,000909: 13,3671 00000 02342 TIMEDELT 2DEC 1250 B-28
053572,000910: 13,3673 00000 01060 5.6SECS 2DEC 560 B-28
053573,000911: 27,2000 SETLOC UPDATE2
053574,000912: 27,2000 BANK
053575,000913: 27,3006 COUNT* $$/INTIN
053576,000914:
053577,000915: 27,3006 E3,1700 EBANK= TEPHEM
053578,000916: 27,3006 06006 INTWAKEU TC INTPRET
053579,000917:
053580,000918: 27,3007 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
053581,000919: 27,3010 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
053582,000920: 27,3011 57040 INTWAKUP
053583,000921:
053584,000922: 27,3012 77775 VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
053585,000923: 27,3013 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
053586,000924: 27,3014 25535 STOVL RCV
053587,000925: 27,3015 01511 VRECT # NOW GO TO 'RECTIFY +13D' TO
053588,000926: 27,3016 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
053589,000927: 27,3017 23453 TINIRECT # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
053590,000928: 27,3020 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
053591,000929: # MOONFLAG SET (OR CLEARED).
053592,000930: 27,3021 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
053593,000931: 27,3022 57027 INTWAKLM # STATE VECTOR UPDATE......
053594,000932: 27,3023 77624 CALL # UPDATE CSM STATE VECTOR
053595,000933: 27,3024 11305 ATOPCSM
053596,000934:
053597,000935: 27,3025 77650 GOTO
053598,000936: 27,3026 57031 INTWAKEX
053599,000937:
053600,000938: 27,3027 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
053601,000939: 27,3030 11340 ATOPLEM
053602,000940:
053603,000941: 27,3031 77414 INTWAKEX CLEAR EXIT
053604,000942: 27,3032 02676 RENDWFLG
053605,000943:
053606,000944: 27,3033 35003 CAF ZERO
053607,000945: 27,3034 00006 EXTEND
053608,000946:
053609,000947: 27,3035 01077 WRITE CHAN77 # ZERO CHANNEL 77
053610,000948: 27,3036 55501 TS UPSVFLAG
053611,000949:
053612,000950: 27,3037 06006 TC INTPRET
053613,000951: 27,3040 77624 INTWAKUP CALL
053614,000952: 27,3041 11727 INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
053615,000953: 27,3042 77776 EXIT
053616,000954:
053617,000955: 27,3043 05415 TC PHASCHNG
053618,000956: 27,3044 04026 OCT 04026
053619,000957: 27,3045 03626 TC UPOUT +1
053620,000958:
053621,000959: 27,2000 SETLOC ORBITAL2
053622,000960: 27,2000 BANK
053623,000961:
053624,000962: 27,3046 COUNT* $$/ORBIT
053625,000963: 27,3046 77420 GRP2PC STQ EXIT
053626,000964: 27,3047 03514 GRP2SVQ
053627,000965: 27,3050 05415 TC PHASCHNG
053628,000966: 27,3051 04022 OCT 04022
053629,000967: 27,3052 06006 TC INTPRET
053630,000968: 27,3053 77650 GOTO
053631,000969: 27,3054 03514 GRP2SVQ
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc