Source Code
These source-code files are part of a reconstructed copy of Artemis 071, the
first release of the Apollo 15 through 17 Command Module (CM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with source code of Artemis 072 previously transcribed from a digitized copy of that program. The code was then updated by undoing changes between the two versions. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021154-. Note that page numbers in the reconstructed code match those on the Artemis 072 printout, although the changed code would likely have changed page numbers for a real Artemis 071 listing. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
055931,000002: ## Copyright: Public domain.
055932,000003: ## Filename: INTEGRATION_INITIALIZATION.agc
055933,000004: ## Purpose: A section of Artemis revision 071.
055934,000005: ## It is part of the reconstructed source code for the first
055935,000006: ## release of the flight software for the Command Module's
055936,000007: ## (CM) Apollo Guidance Computer (AGC) for Apollo 15 through
055937,000008: ## 17. The code has been recreated from a copy of Artemis 072.
055938,000009: ## It has been adapted such that the resulting bugger words
055939,000010: ## exactly match those specified for Artemis 071 in NASA
055940,000011: ## drawing 2021154-, which gives relatively high confidence
055941,000012: ## that the reconstruction is correct.
055942,000013: ## Reference: 1309
055943,000014: ## Assembler: yaYUL
055944,000015: ## Contact: Ron Burkey <info@sandroid.org>.
055945,000016: ## Website: www.ibiblio.org/apollo/index.html
055946,000017: ## Mod history: 2019-08-14 MAS Created from Artemis 072.
055947,000018: ## 2021-05-30 ABS SP3SPT1 -> 2P3SPT1
055948,000019:
Page 1309 |
055950,000021: # 1.0 INTRODUCTION
055951,000022: # ----------------
055952,000023:
055953,000024: # FROM A USERS POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
055954,000025: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
055955,000026: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
055956,000027: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
055957,000028: # SIDE THE LUNAR SPHERE OF INFLUENCE.
055958,000029:
055959,000030: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
055960,000031: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
055961,000032: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
055962,000033: # CALL TC INTSTALL.
055963,000034:
055964,000035: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
055965,000036: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
055966,000037: # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
055967,000038: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
055968,000039: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
055969,000040:
055970,000041: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
055971,000042: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
055972,000043: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
055973,000044: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
055974,000045:
055975,000046: # 2.0 GENERAL DESCRIPTION
055976,000047: # -----------------------
055977,000048:
055978,000049: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS---
055979,000050: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
055980,000051: # 2) INTEGRATES THE W-MATRIX
055981,000052: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
055982,000053:
055983,000054: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
055984,000055: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
055985,000056: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
055986,000057: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
055987,000058: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
055988,000059: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
055989,000060: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
055990,000061: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
055991,000062: # AND/OR STATE VECTOR.
055992,000063:
055993,000064: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
055994,000065: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
055995,000066: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
055996,000067:
055997,000068: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS.
055998,000069: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
055999,000070: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
056000,000071:
Page 1310 |
056002,000073: # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
056003,000074:
056004,000075: # 2.1 RESTARTS
056005,000076:
056006,000077: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
056007,000078: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
056008,000079: # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
056009,000080: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
056010,000081: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
056011,000082: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
056012,000083: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
056013,000084:
056014,000085: # 2.2 SCALING
056015,000086:
056016,000087: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
056017,000088: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTOR DEPENDS ON THE ORIGIN OF THE COORDINATE
056018,000089: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
056019,000090: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
056020,000091: # DIFFERENT SCALING.
056021,000092: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
056022,000093:
056023,000094: # 3.0 INPUT/OUTPUT
056024,000095: # ----------------
056025,000096:
056026,000097: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
056027,000098: # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
056028,000099: # FOR INTEGRVS, THE RCV,VCV, TET OF THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
056029,000100:
056030,000101: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
056031,000102: # EARTH MOON
056032,000103: # 29 27
056033,000104: # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
056034,000105:
056035,000106: # 7 5
056036,000107: # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
056037,000108:
056038,000109: # 28 28
056039,000110: # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
056040,000111: # CUSTOMARILY 0, BUT NOTE LUNAR
056041,000112: # ORBIT DEPENDENCE ON REAL TIME.
056042,000113:
056043,000114: # 22 18
056044,000115: # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
056045,000116: # 0 IF TCCSM(LEM) = 0
056046,000117:
056047,000118: # 3 -1
056048,000119: # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
056049,000120: # 0 IF TCCSM(LEM) = 0
Page 1311 |
056051,000122: # 29 27
056052,000123: # RCVCSM(LEM) - CONIC POSITION METERS 2 2
056053,000124: # EQUALS RRECTCSM(LEM) IF
056054,000125: # TCCSM(LEM) = 0
056055,000126:
056056,000127: # 7 5
056057,000128: # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
056058,000129: # EQUALS VRECTCSM(LEM) IF
056059,000130: # TCCSM(LEM) = 0
056060,000131:
056061,000132: # 28 28
056062,000133: # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
056063,000134: # CUSTOMARILY 0
056064,000135:
056065,000136: # 1/2 17 16
056066,000137: # XKEPCSM(LEM) - ROOT OF KEPLERS EQUATION M 2 2
056067,000138: # 0 IF TCCSM(LEM) = 0
056068,000139:
056069,000140: # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
056070,000141: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
056071,000142: # LMOONFLG C = CSM, L = LM 0 0
056072,000143: # LMIDFLG 0,1 0,1
056073,000144:
056074,000145: # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
056075,000146:
056076,000147: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
056077,000148: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
056078,000149: # ROUTINE MUST BE PRESET.
056079,000150:
056080,000151: # OUTPUT
056081,000152: # AFTER EVERY CALL TO INTEGRATION
056082,000153: # EARTH MOON
056083,000154: # 29 29
056084,000155: # 0D RATT POSITION METERS 2 2
056085,000156: # 7 7
056086,000157: # 6D VATT VELOCITY M/CSEC 2 2
056087,000158: # 28 28
056088,000159: # 12D TAT TIME 2 2
056089,000160: # 29 27
056090,000161: # 14D RATT1 POSITION METERS 2 2
056091,000162: # 7 5
056092,000163: # 20D VATT1 VELOCITY M/CSEC 2 2
056093,000164: # 3 2 36 30
056094,000165: # 26D MU(P) MU M /CS 2 2
056095,000166:
056096,000167: # X1 MUTABLE ENTRY -2 -10D
056097,000168:
056098,000169: # X2 COORDINT
056099,000170: # X2 COORDINATE SYSTEM ORIGEN 0 2
056100,000171: # (THIS, NOT MOONFLAG, SHOULD BE
Page 1312 |
056102,000173: # USED TO DETERMINE ORIGIN.)
056103,000174:
056104,000175: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
056105,000176: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
056106,000177: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
056107,000178: # CALLING PROGRAM.
056108,000179:
056109,000180: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
056110,000181: # -------------------------------------
056111,000182:
056112,000183: # A) PRECISION ORBITAL INTEGRATION. CSMPREC,LEMPREC ENTRANCES
056113,000184: # L-X STORE TIME TO 95T5791T5 T 95 PUS L9ST (T4531)
056114,000185: # L CALL
056115,000186: # L+1 CSMPREC (OR LEMPREC)
056116,000187: # L+2 RETURN
056117,000188: # INPUT 28
056118,000189: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
056119,000190: # OUTPUT
056120,000191: # THE DATA LISTED IN SECTION 3.0 PLUS
056121,000192: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
056122,000193: # BODY... METERS B-29 ONLY IF MIDFLAG = DIMOFLAG = 1
056123,000194: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
056124,000195: # L-X STORE TIME IN PUSH LIST (TDEC1)
056125,000196: # L CALL
056126,000197: # L+1 CSMCONIC (OR LEMCONIC)
056127,000198: # INPUT/OUTPUT
056128,000199: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
056129,000200: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
056130,000201: # CALL
056131,000202: # INTSTALL
056132,000203: # VLOAD
056133,000204: # POSITION VECTOR
056134,000205: # STOVL RCV
056135,000206: # VELOCITY VECTOR
056136,000207: # STODL VCV
056137,000208: # TIME STATE VECTOR VALID
056138,000209: # STODL TET
056139,000210: # FINAL RADIUS
056140,000211: # STORE RFINAL
056141,000212: # SET(CLEAR) SET(CLEAR)
056142,000213: # INTYPFLAG
056143,000214: # MOONFLAG
056144,000215: # SET(CLEAR) DLOAD
056145,000216: # DESIRED TIME
056146,000217: # STCALL TDEC1
056147,000218: # INTEGRVS
056148,000219: # INPUT
056149,000220: # RCV POSITION VECTOR METERS
056150,000221: # VCV VELOCITY VECTOR M/CSEC
056151,000222: # TET TIME OF STATE VECTOR (MAY = 0) CSEC B-28
Page 1313 |
056153,000224: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
056154,000225: # (MAY BE INCREMENT IF TET=0)
056155,000226: # OUTPUT
056156,000227: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
056157,000228: # DEPENDING ON INTYPFLG.
056158,000229: # D) INTEGRATE STATE VECTOR. INTGRV ENTRANCE
056159,000230: # L-X STORE TIME IN PUSH LIST (TDEC1) (MAY BE DONE AFTER CALL TO INTSTALL)
056160,000231: # L-8 CALL
056161,000232: # L-7
056162,000233: # L-6 SET(CLEAR) SET(CLEAR)
056163,000234: # L-5 VINTFLAG 1=CSM, 0=LM
056164,000235: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
056165,000236: # L-3 SET(CLEAR) SET(CLEAR)
056166,000237: # L-2 DIMOFLAG 1=W-MATRIX, 0=NO W-MATRIX
056167,000238: # L-1 D6OR9FLG 1=9X9, 0=6X6
056168,000239: # L SET DLOAD
056169,000240: # L+1 STATEFLG DESIRE PERMANENT UPDATE
056170,000241: # L+2 FINAL RAD. OF STATE VECTOR
056171,000242: # L+3 STCALL RFINAL
056172,000243: # L+4 INTEGRV
056173,000244: # L CALL NORMAL USE-- WILL UPDATE STATE
056174,000245: # L+1 INTEGRV VECTOR IF DIMOFLAG=1. (STATEFLG IS
056175,000246: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
056176,000247: # IT IS USED.)
056177,000248: # INPUT
056178,000249: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
056179,000250: # OUTPUT
056180,000251: # SAME AS FOR PRECISION OR CONIC INTEGRATION
056181,000252: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
056182,000253: # THE PERMANENT STATE VECTOR REPRESENTATION.
056183,000254:
056184,000255: 13,2000 SETLOC INTINIT
056185,000256: 13,2000 BANK
056186,000257: 13,2702 E3,1554 EBANK= RRECTCSM
056187,000258: 13,2702 COUNT* $$/INTIN
056188,000259: 13,2702 05402 STATEINT TC PHASCHNG
056189,000260: 13,2703 00052 OCT 00052
056190,000261: 13,2704 01,2036 2P5SPT4 = 2.5SPOT
056191,000262: 13,2704 35047 CAF PRIO5
056192,000263: 13,2705 05135 TC FINDVAC
056193,000264: 13,2706 E3,1554 EBANK= RRECTCSM
056194,000265: 13,2706 02711 26063 2CADR STATINT1
056195,000266:
056196,000267: 13,2710 05314 TC TASKOVER
056197,000268: 13,2711 06006 STATINT1 TC INTPRET
056198,000269: 13,2712 47014 BON RTB
056199,000270: 13,2713 04712 QUITFLAG
056200,000271: 13,2714 26753 NOINT # NO STATEINT IF V96
056201,000272: 13,2715 51751 LOADTIME
056202,000273: 13,2716 00041 STORE TDEC1
Page 1314 |
056204,000275: 13,2717 45014 CLEAR CALL
056205,000276: 13,2720 04274 V96ONFLG
056206,000277: 13,2721 27516 INTSTALL
056207,000278: 13,2722 45014 SET CALL
056208,000279: 13,2723 01076 NODOFLAG
056209,000280: 13,2724 26744 SETIFLGS
056210,000281: 13,2725 52014 SET GOTO # INHIBIT BACKWARDS INTEGRATION
056211,000282: 13,2726 01466 POOFLAG
056212,000283: 13,2727 26000 STATEUP
056213,000284: 13,2730 00003 25140 600SECS 2DEC 60000 B-28
056214,000285:
056215,000286: 13,2732 77414 ENDINT CLEAR EXIT
056216,000287: 13,2733 01672 STATEFLG
056217,000288: 13,2734 05402 TC PHASCHNG
056218,000289: 13,2735 20032 OCT 20032
056219,000290: 13,2736 01,2033 2P3SPT1 = 2.3SPOT
056220,000291: 13,2736 00006 EXTEND
056221,000292: 13,2737 32731 DCA 600SECS
056222,000293: 13,2740 05332 TC LONGCALL
056223,000294: 13,2741 E3,1554 EBANK= RRECTHIS
056224,000295: 13,2741 02702 26063 2CADR STATEINT
056225,000296:
056226,000297: 13,2743 05205 TC ENDOFJOB
056227,000298: 13,2744 43014 SETIFLGS SET CLEAR
056228,000299: 13,2745 01472 STATEFLG
056229,000300: 13,2746 01673 INTYPFLG
056230,000301: 13,2747 43014 CLEAR CLEAR
056231,000302: 13,2750 01676 DIM0FLAG
056232,000303: 13,2751 01675 D6OR9FLG
056233,000304: 13,2752 77616 RVQ
056234,000305: 13,2753 77776 NOINT EXIT
056235,000306: 13,2754 05402 TC PHASCHNG
056236,000307: 13,2755 00002 OCT 2
056237,000308:
056238,000309: 13,2756 05561 TC DOWNFLAG
056239,000310: 13,2757 00221 ADRES QUITFLAG
056240,000311:
056241,000312: 13,2760 05205 TC ENDOFJOB
056242,000313:
056243,000314: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
056244,000315:
056245,000316: # CALLING SEQUENCE
056246,000317: # L CALL
056247,000318: # L+1 ATOPCSM
056248,000319:
056249,000320: # NORMAL EXIT AT L+2
056250,000321:
056251,000322: 13,2761 47020 ATOPCSM STQ RTB
056252,000323: 13,2762 00051 S2
056253,000324: 13,2763 26774 MOVEACSM
Page 1315 |
056255,000326: 13,2764 45014 SET CALL
056256,000327: 13,2765 04063 CMOONFLG
056257,000328: 13,2766 20240 SVDWN1
056258,000329: 13,2767 43014 BON CLRGO
056259,000330: 13,2770 00303 MOONFLAG
056260,000331: 13,2771 00051 S2
056261,000332: 13,2772 04223 CMOONFLG
056262,000333: 13,2773 00051 S2
056263,000334: 13,2774 03140 MOVEACSM TC SETBANK
056264,000335: 13,2775 55500 +1 TS DIFEQCNT # INITIALIZE INDEX
056265,000336: 13,2776 51500 INDEX DIFEQCNT
056266,000337: 13,2777 31502 CA RRECT
056267,000338: 13,3000 51500 INDEX DIFEQCNT
056268,000339: 13,3001 55554 TS RRECTCSM
056269,000340: 13,3002 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
056270,000341: 13,3003 12775 TCF MOVEACSM +1 # NO-LOOP
056271,000342: 13,3004 06030 TC DANZIG # COMPLETE- RETURN
056272,000343:
056273,000344:
056274,000345: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
056275,000346:
056276,000347: # CALLING SEQUENCE
056277,000348: # L CALL
056278,000349: # PTOACSM
056279,000350:
056280,000351: # NORMAL EXIT AT L+2
056281,000352:
056282,000353: 13,3005 43034 PTOACSM RTB BON
056283,000354: 13,3006 27023 MOVEPCSM
056284,000355: 13,3007 04303 CMOONFLG
056285,000356: 13,3010 27016 SETMOON
056286,000357: 13,3011 66214 CLRMOON CLEAR SSP
056287,000358: 13,3012 00263 MOONFLAG
056288,000359: 13,3013 02151 PBODY
056289,000360: 13,3014 00000 0
056290,000361: 13,3015 77616 RVQ
056291,000362: 13,3016 66214 SETMOON SET SSP
056292,000363: 13,3017 00063 MOONFLAG
056293,000364: 13,3020 02151 PBODY
056294,000365: 13,3021 00002 2
056295,000366: 13,3022 77616 RVQ
056296,000367: 13,3023 03140 MOVEPCSM TC SETBANK
056297,000368: 13,3024 55500 +1 TS DIFEQCNT
056298,000369: 13,3025 51500 INDEX DIFEQCNT
056299,000370: 13,3026 31554 CA RRECTCSM
056300,000371: 13,3027 51500 INDEX DIFEQCNT
056301,000372: 13,3030 55502 TS RRECT
056302,000373: 13,3031 11500 CCS DIFEQCNT
056303,000374: 13,3032 13024 TCF MOVEPCSM +1
056304,000375: 13,3033 06030 TC DANZIG
056305,000376:
Page 1316 |
056307,000378: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
056308,000379: 13,3034 47020 ATOPLEM STQ RTB
056309,000380: 13,3035 00051 S2
056310,000381: 13,3036 27047 MOVEALEM
056311,000382: 13,3037 45014 SET CALL
056312,000383: 13,3040 04064 LMOONFLG
056313,000384: 13,3041 20264 SVDWN2
056314,000385: 13,3042 43014 BON CLRGO
056315,000386: 13,3043 00303 MOONFLAG
056316,000387: 13,3044 00051 S2
056317,000388: 13,3045 04224 LMOONFLG
056318,000389: 13,3046 00051 S2
056319,000390: 13,3047 03140 MOVEALEM TC SETBANK
056320,000391: 13,3050 55500 +1 TS DIFEQCNT
056321,000392: 13,3051 51500 INDEX DIFEQCNT
056322,000393: 13,3052 31502 CA RRECT
056323,000394: 13,3053 51500 INDEX DIFEQCNT
056324,000395: 13,3054 55626 TS RRECTLEM
056325,000396: 13,3055 11500 CCS DIFEQCNT
056326,000397: 13,3056 13050 TCF MOVEALEM +1
056327,000398: 13,3057 06030 TC DANZIG
056328,000399:
056329,000400:
056330,000401: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
056331,000402:
056332,000403: 13,3060 47014 PTOALEM BON RTB
056333,000404: 13,3061 04307 SURFFLAG
056334,000405: 13,3062 27101 USEPIOS
056335,000406: 13,3063 27070 MOVEPLEM
056336,000407: 13,3064 52014 BON GOTO
056337,000408: 13,3065 04304 LMOONFLG
056338,000409: 13,3066 27016 SETMOON
056339,000410: 13,3067 27011 CLRMOON
056340,000411: 13,3070 03140 MOVEPLEM TC SETBANK
056341,000412: 13,3071 55500 +1 TS DIFEQCNT
056342,000413: 13,3072 51500 INDEX DIFEQCNT
056343,000414: 13,3073 31626 CA RRECTLEM
056344,000415: 13,3074 51500 INDEX DIFEQCNT
056345,000416: 13,3075 55502 TS RRECT
056346,000417: 13,3076 11500 CCS DIFEQCNT
056347,000418: 13,3077 13071 TCF MOVEPLEM +1
056348,000419: 13,3100 06030 TC DANZIG
056349,000420:
056350,000421:
056351,000422: 13,3101 77201 USEPIOS SETPD VLOAD
056352,000423: 13,3102 00001 0
056353,000424: 13,3103 02026 RLS
056354,000425: 13,3104 41525 PDDL PUSH
056355,000426: 13,3105 00041 TDEC1
Page 1317 |
056357,000428: 13,3106 15517 STODL TET
056358,000429: 13,3107 27756 5/8
056359,000430: 13,3110 77624 CALL
056360,000431: 13,3111 55345 RP-TO-R
056361,000432: 13,3112 25535 STOVL RCV
056362,000433: 13,3113 11754 ZUNIT
056363,000434: 13,3114 14001 STODL 0D
056364,000435: 13,3115 01517 TET
056365,000436: 13,3116 14007 STODL 6D
056366,000437: 13,3117 27756 5/8
056367,000438: 13,3120 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT
056368,000439: 13,3121 00063 MOONFLAG
056369,000440: 13,3122 55345 RP-TO-R
056370,000441: 13,3123 74235 VXV VXSC
056371,000442: 13,3124 01535 RCV
056372,000443: 13,3125 27137 OMEGMOON
056373,000444: 13,3126 25543 STOVL VCV
056374,000445: 13,3127 11762 ZEROVEC
056375,000446: 13,3130 01521 STORE TDELTAV
056376,000447: 13,3131 67174 AXT,2 SXA,2
056377,000448: 13,3132 00002 2
056378,000449: 13,3133 02150 PBODY
056379,000450: 13,3134 35527 STCALL TNUV
056380,000451: 13,3135 27252 A-PCHK
056381,000452: 13,3136 07112 06620 OMEGMOON 2DEC* 2.66169947 E-8 B+23*
056382,000453: 13,3140 33144 SETBANK CAF INTBANK
056383,000454: 13,3141 54006 TS BBANK
056384,000455: 13,3142 33553 CAF FORTYONE
056385,000456: 13,3143 00002 TC Q
056386,000457: 13,3144 E3,1554 EBANK= RRECTCSM
056387,000458: 13,3144 26063 INTBANK BBCON INTEGRV
056388,000459:
056389,000460:
056390,000461: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
056391,000462: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
056392,000463:
056393,000464: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
056394,000465: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
056395,000466: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
056396,000467: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
056397,000468: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
056398,000469: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
056399,000470:
056400,000471: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
056401,000472: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
056402,000473: # CSMPREC CSMCONIC LEMPREC LEMCONIC
056403,000474: # VINTFLAG SET SET CLEAR CLEAR
056404,000475: # INTYPFLG CLEAR SET CLEAR SET
056405,000476: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
Page 1318 |
056407,000478:
056408,000479: # CALLING SEQUENCE
056409,000480: # L-X STORE TDEC1
056410,000481: # L CALL (STCALL TDEC1)
056411,000482: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
056412,000483:
056413,000484: # NORMAL EXIT TO L+2
056414,000485:
056415,000486: # SUBROUTINES CALLED
056416,000487: # INTEGRV1
056417,000488: # PRECOUT FOR CSMPREC AND LEMPREC
056418,000489: # CONICOUT FOR CSMCONIC AND LEMCONIC
056419,000490:
056420,000491:
056421,000492: # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
056422,000493: # INPUT
056423,000494: # TDEC1 TIME TO INTEGRATE TO . CSECS B-28
056424,000495:
056425,000496: 13,3145 45020 CSMPREC STQ CALL
056426,000497: 13,3146 00046 X1
056427,000498: 13,3147 27516 INTSTALL
056428,000499: 13,3150 43130 SXA,1 SET
056429,000500: 13,3151 02213 IRETURN
056430,000501: 13,3152 01474 VINTFLAG
056431,000502:
056432,000503: 13,3153 43014 IFLAGP SET CLEAR
056433,000504: 13,3154 01467 PRECIFLG
056434,000505: 13,3155 01676 DIM0FLAG
056435,000506: 13,3156 77614 CLRGO
056436,000507: 13,3157 01633 INTYPFLG
056437,000508: 13,3160 27240 INTEGRV1
056438,000509: 13,3161 45020 LEMPREC STQ CALL
056439,000510: 13,3162 00046 X1
056440,000511: 13,3163 27516 INTSTALL
056441,000512: 13,3164 43130 SXA,1 CLRGO
056442,000513: 13,3165 02213 IRETURN
056443,000514: 13,3166 01634 VINTFLAG
056444,000515: 13,3167 27153 IFLAGP
056445,000516:
056446,000517: 13,3170 45020 CSMCONIC STQ CALL
056447,000518: 13,3171 00046 X1
056448,000519: 13,3172 27516 INTSTALL
056449,000520: 13,3173 43130 SXA,1 SET
056450,000521: 13,3174 02213 IRETURN
056451,000522: 13,3175 01474 VINTFLAG
056452,000523: 13,3176 43014 IFLAGC CLEAR SETGO
056453,000524: 13,3177 01676 DIM0FLAG
056454,000525: 13,3200 01433 INTYPFLG
056455,000526: 13,3201 27240 INTEGRV1
056456,000527: 13,3202 45020 LEMCONIC STQ CALL
056457,000528: 13,3203 00046 X1
Page 1319 |
056459,000530: 13,3204 27516 INTSTALL
056460,000531: 13,3205 43130 SXA,1 CLRGO
056461,000532: 13,3206 02213 IRETURN
056462,000533: 13,3207 01634 VINTFLAG
056463,000534: 13,3210 27176 IFLAGC
056464,000535:
056465,000536: 13,3211 66214 INTEGRVS SET SSP
056466,000537: 13,3212 01467 PRECIFLG
056467,000538: 13,3213 02151 PBODY
056468,000539: 13,3214 00000 0
056469,000540: 13,3215 66214 BOF SSP
056470,000541: 13,3216 00343 MOONFLAG
056471,000542: 13,3217 27222 +3
056472,000543: 13,3220 02151 PBODY
056473,000544: 13,3221 00002 2
056474,000545: 13,3222 77220 STQ VLOAD
056475,000546: 13,3223 02213 IRETURN
056476,000547: 13,3224 11762 ZEROVEC
056477,000548: 13,3225 01521 STORE TDELTAV
056478,000549: 13,3226 35527 STCALL TNUV
056479,000550: 13,3227 23420 RECTIFY
056480,000551: 13,3230 43014 CLEAR SET
056481,000552: 13,3231 01676 DIM0FLAG
056482,000553: 13,3232 04062 NEWIFLG
056483,000554: 13,3233 77614 SETGO
056484,000555: 13,3234 04020 RPQFLAG
056485,000556: 13,3235 22320 ALOADED
056486,000557:
056487,000558: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER,
056488,000559: # NORMALLY THE NAVIGATION PROGRAM, TO SET THE INTEG. FLAGS. THE ROUTINE
056489,000560: # IS ENTERED AT INTEGRV1 BY CSMPREC ET.AL. AND AT ALOADED BY INTEGRVS.
056490,000561: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
056491,000562: # PROGRAM FOR PRECISION OR CONIC
056492,000563:
056493,000564: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
056494,000565: # SETTING ANY FLAGS.
056495,000566: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
056496,000567: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
056497,000568: # INTYPFLG
056498,000569: # DIM0FLAG
056499,000570: # D6OR9FLG
056500,000571:
056501,000572: # CALLING SEQUENCE
056502,000573: # L-X CALL
056503,000574: # L-Y INTSTALL
056504,000575: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
056505,000576: # AND DIM0FLAG IS CLEAR.
056506,000577: # L CALL
056507,000578: # L+1 INTEGRV
056508,000579:
056509,000580: # INITIALIZATION
056510,000581: # FLAGS AS ABOVE
056511,000582: # STORE TIME TO INTEGRATE TO IN TDEC1
056512,000583:
Page 1320 |
056514,000585: # OUTPUT
056515,000586: # RATT AS
056516,000587: # VATT DEFINED
056517,000588: # TAT BEFORE
056518,000589:
056519,000590:
056520,000591: 13,3236 77620 INTEGRV STQ
056521,000592: 13,3237 02213 IRETURN
056522,000593: 13,3240 43014 INTEGRV1 SET SET
056523,000594: 13,3241 04060 RPQFLAG
056524,000595: 13,3242 04062 NEWIFLG
056525,000596: 13,3243 77731 INTEGRV2 SSP
056526,000597: 13,3244 00053 QPRET
056527,000598: 13,3245 22320 ALOADED
056528,000599: 13,3246 52014 BON GOTO
056529,000600: 13,3247 01714 VINTFLAG
056530,000601: 13,3250 27005 PTOACSM
056531,000602: 13,3251 27060 PTOALEM
056532,000603: 11,2000 SETLOC INTINIT1
056533,000604: 11,2000 BANK
056534,000605: 11,2320 COUNT* $$/INTIN
056535,000606: 11,2320 77745 ALOADED DLOAD
056536,000607: 11,2321 00041 TDEC1
056537,000608: 11,2322 00745 STORE TDEC
056538,000609: 11,2323 52014 BOFF GOTO
056539,000610: 11,2324 01753 INTYPFLG
056540,000611: 11,2325 27364 TESTLOOP
056541,000612: 11,2326 27350 RVCON
056542,000613: 13,2000 SETLOC INTINIT
056543,000614: 13,2000 BANK
056544,000615: 13,3252 COUNT* $$/INTIN
056545,000616: 13,3252 45014 A-PCHK BOF CALL
056546,000617: 13,3253 00342 MIDFLAG
056547,000618: 13,3254 27263 ANDOUT # DONT MAKE ORIGIN CHANGE CHECK
056548,000619: 13,3255 23317 CHKSWTCH
056549,000620: 13,3256 45044 BPL CALL
056550,000621: 13,3257 27263 ANDOUT # NO ORIGIN CHANGE
056551,000622: 13,3260 23360 ORIGCHNG # MAKE THE SWITCH
056552,000623: 13,3261 77754 LXA,2 # SET X2 FOR MOON OR EARTH SCALING
056553,000624: 13,3262 02150 PBODY
056554,000625: 13,3263 77414 ANDOUT BOFCLR EXIT
056555,000626: 13,3264 01652 STATEFLG
056556,000627: 13,3265 27304 RECTOUT
056557,000628: 13,3266 05402 TC PHASCHNG
056558,000629: 13,3267 04022 OCT 04022
056559,000630: 13,3270 05547 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
056560,000631: 13,3271 00230 ADRES REINTFLG # INTSTALL AND INTWAKE
056561,000632: 13,3272 06006 TC INTPRET
056562,000633: 13,3273 77731 SSP
056563,000634: 13,3274 00053 QPRET
Page 1321 |
056565,000636: 13,3275 27302 PHEXIT
056566,000637: 13,3276 52014 BON GOTO
056567,000638: 13,3277 01714 VINTFLAG
056568,000639: 13,3300 26761 ATOPCSM
056569,000640: 13,3301 27034 ATOPLEM
056570,000641: 13,3302 77624 PHEXIT CALL
056571,000642: 13,3303 22327 GRP2PC
056572,000643: 13,3304 45001 RECTOUT SETPD CALL
056573,000644: 13,3305 00001 0
056574,000645: 13,3306 23420 RECTIFY
056575,000646: 13,3307 53775 VLOAD VSL*
056576,000647: 13,3310 01503 RRECT
056577,000648: 13,3311 57576 0,2
056578,000649: 13,3312 53715 PDVL VSL* # RATT TO PD0
056579,000650: 13,3313 01511 VRECT
056580,000651: 13,3314 57576 0,2
056581,000652: 13,3315 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
056582,000653: 13,3316 01517 TET
056583,000654: 13,3317 01503 RRECT
056584,000655: 13,3320 64715 PDVL PDDL*
056585,000656: 13,3321 01511 VRECT
056586,000657: 13,3322 50037 MUEARTH,2
056587,000658: 13,3323 76006 PUSH AXT,1
056588,000659: 13,3324 77765 DEC -10 B-14
056589,000660: 13,3325 76014 BON AXT,1
056590,000661: 13,3326 00303 MOONFLAG
056591,000662: 13,3327 27331 +2
056592,000663: 13,3330 77775 DEC -2 B-14
056593,000664: 13,3331 40001 INTEXIT SETPD BOV
056594,000665: 13,3332 00001 0
056595,000666: 13,3333 27334 +1
056596,000667: 13,3334 43014 CLEAR CLEAR
056597,000668: 13,3335 04675 MIDAVFLG
056598,000669: 13,3336 01672 STATEFLG
056599,000670: 13,3337 43014 CLEAR CLEAR
056600,000671: 13,3340 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
056601,000672: 13,3341 01667 PRECIFLG
056602,000673: 13,3342 77535 SLOAD EXIT
056603,000674: 13,3343 02214 IRETURN
056604,000675: 13,3344 30154 CA MPAC
056605,000676: 13,3345 50120 INDEX FIXLOC
056606,000677: 13,3346 54052 TS QPRET
056607,000678: 13,3347 03527 TC INTWAKE
056608,000679:
056609,000680: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
056610,000681: # VELOCITY FOR THE INTERVAL (TET-TDEC)
056611,000682:
056612,000683: 13,3350 45345 RVCON DLOAD DSU
056613,000684: 13,3351 00745 TDEC
056614,000685: 13,3352 01517 TET
056615,000686: 13,3353 36303 STCALL TAU.
Page 1322 |
056617,000688: 13,3354 23420 RECTIFY
056618,000689: 13,3355 77624 CALL
056619,000690: 13,3356 22336 KEPPREP
056620,000691: 13,3357 43345 DLOAD DAD
056621,000692: 13,3360 01551 TC
056622,000693: 13,3361 01517 TET
056623,000694: 13,3362 35517 STCALL TET
056624,000695: 13,3363 27304 RECTOUT
056625,000696:
Page 1323 |
056627,000698: 13,3364 43014 TESTLOOP BOF CLRGO
056628,000699: 13,3365 04752 QUITFLAG
056629,000700: 13,3366 27371 +3
056630,000701: 13,3367 01632 STATEFLG
056631,000702: 13,3370 27331 INTEXIT # STOP INTEGRATION
056632,000703: 13,3371 73001 +3 SETPD LXA,2
056633,000704: 13,3372 00013 10D
056634,000705: 13,3373 02150 PBODY
056635,000706: 13,3374 51575 VLOAD ABVAL
056636,000707: 13,3375 01535 RCV
056637,000708: 13,3376 43006 PUSH CLEAR # RC TO 10D
056638,000709: 13,3377 00262 MIDFLAG
056639,000710: 13,3400 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP
056640,000711: 13,3401 66600 RME,2
056641,000712: 13,3402 27405 +3
056642,000713: 13,3403 77614 SET
056643,000714: 13,3404 00062 MIDFLAG
056644,000715: 13,3405 41345 NORFINAL DLOAD DMP
056645,000716: 13,3406 00013 10D
056646,000717: 13,3407 00043 34D
056647,000718: 13,3410 55762 SR1R DDV*
056648,000719: 13,3411 50037 MUEARTH,2
056649,000720: 13,3412 41366 SQRT DMP
056650,000721: 13,3413 23751 .3D
056651,000722: 13,3414 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE
056652,000723: 13,3415 54345 DLOAD SL
056653,000724: 13,3416 00155 MPAC
056654,000725: 13,3417 20220 15D # OF 128 CSECS.
056655,000726: 13,3420 40006 PUSH BOV
056656,000727: 13,3421 27446 MAXDT
056657,000728: 13,3422 50021 BDSU BMN
056658,000729: 13,3423 27515 DT/2MAX
056659,000730: 13,3424 27446 MAXDT
056660,000731: 13,3425 45345 DT/2COMP DLOAD DSU
056661,000732: 13,3426 00745 TDEC
056662,000733: 13,3427 01517 TET
056663,000734: 13,3430 54234 RTB SL
056664,000735: 13,3431 45636 SGNAGREE
056665,000736: 13,3432 20211 8D
056666,000737: 13,3433 02305 STORE DT/2 # B-19
056667,000738: 13,3434 51400 BOV ABS
056668,000739: 13,3435 27452 GETMAXDT
056669,000740: 13,3436 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
056670,000741: 13,3437 00015 12D
056671,000742: 13,3440 27456 P00HCHK
056672,000743: 13,3441 75345 USEMAXDT DLOAD SIGN
056673,000744: 13,3442 00015 12D
056674,000745: 13,3443 02305 DT/2
Page 1324 |
056676,000747: 13,3444 36305 STCALL DT/2
056677,000748: 13,3445 27456 P00HCHK
056678,000749: 13,3446 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
056679,000750: 13,3447 27515 DT/2MAX
056680,000751: 13,3450 77650 GOTO
056681,000752: 13,3451 27425 DT/2COMP
056682,000753: 13,3452 77634 GETMAXDT RTB
056683,000754: 13,3453 45761 SIGNMPAC
056684,000755: 13,3454 36305 STCALL DT/2
056685,000756: 13,3455 27441 USEMAXDT
056686,000757: 13,3456 51545 P00HCHK DLOAD ABS
056687,000758: 13,3457 02305 DT/2
056688,000759: 13,3460 50025 DSU BMN
056689,000760: 13,3461 27513 DT/2MIN
056690,000761: 13,3462 27252 A-PCHK
056691,000762: 13,3463 43014 BOFF BON
056692,000763: 13,3464 01746 POOFLAG # IS BACKWARDS INTEGRATION INHIBITED
056693,000764: 13,3465 23237 TIMESTEP # NO
056694,000765: 13,3466 01707 PRECIFLG # WAS THIS CALL VIA CSM(LEM)PREC
056695,000766: 13,3467 23237 TIMESTEP # YES
056696,000767: 13,3470 45345 DLOAD DSU
056697,000768: 13,3471 02305 DT/2
056698,000769: 13,3472 00015 12D
056699,000770: 13,3473 43040 BMN BOFCLR
056700,000771: 13,3474 27252 A-PCHK
056701,000772: 13,3475 04242 NEWIFLG
056702,000773: 13,3476 23237 TIMESTEP
056703,000774: 13,3477 45345 DLOAD DSU
056704,000775: 13,3500 00745 TDEC
056705,000776: 13,3501 01517 TET
056706,000777: 13,3502 77640 BMN # NO BACKWARD INTEGRATION
056707,000778: 13,3503 27331 INTEXIT
056708,000779: 13,3504 40525 PDDL SR4
056709,000780: 13,3505 02305 DT/2 # IS 4(DT) LS (TDEC - TET)
056710,000781: 13,3506 44322 SR2R BDSU # NO
056711,000782: 13,3507 52040 BMN GOTO
056712,000783: 13,3510 27331 INTEXIT
056713,000784: 13,3511 23237 TIMESTEP
056714,000785: 13,3512 00000 01400 DT/2MIN 2DEC 3 B-20
056715,000786: 13,3514 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
056716,000787: 13,3516 77776 INTSTALL EXIT
056717,000788: 13,3517 30106 +1 CA FLGWRD10
056718,000789: 13,3520 74346 MASK PRIO30
056719,000790: 13,3521 00006 EXTEND
056720,000791: 13,3522 13561 BZF OKTOGRAB # YES
056721,000792: 13,3523 33565 CAF WAKESTAL
056722,000793: 13,3524 05163 TC JOBSLEEP
056723,000794: 13,3525 77776 INTWAKE0 EXIT
Page 1325 |
056725,000796: 13,3526 13547 TCF INTWAKE1
056726,000797:
056727,000798: 13,3527 40106 INTWAKE CS FLGWRD10 # IS THIS INTSTALLED ROUTINE TO BE
056728,000799: 13,3530 74754 MASK REINTBIT # RESTARTED
056729,000800: 13,3531 10000 CCS A
056730,000801: 13,3532 03547 TC INTWAKE1 # NO
056731,000802:
056732,000803: 13,3533 50120 INDEX FIXLOC
056733,000804: 13,3534 30052 CA QPRET
056734,000805: 13,3535 55261 TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
056735,000806:
056736,000807: 13,3536 05402 TC PHASCHNG
056737,000808: 13,3537 04022 OCT 04022
056738,000809:
056739,000810: 13,3540 31261 CA TBASE2
056740,000811: 13,3541 50120 INDEX FIXLOC
056741,000812: 13,3542 54052 TS QPRET
056742,000813:
056743,000814: 13,3543 34754 CAF REINTBIT
056744,000815: 13,3544 70106 MASK FLGWRD10
056745,000816: 13,3545 00006 EXTEND
056746,000817: 13,3546 13563 BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
056747,000818:
056748,000819: 13,3547 33565 INTWAKE1 CAF WAKESTAL
056749,000820: 13,3550 05167 TC JOBWAKE
056750,000821: 13,3551 10064 CCS LOCCTR
056751,000822: 13,3552 13547 TCF INTWAKE1
056752,000823: 13,3553 00051 FORTYONE DEC 41 B-14
056753,000824: 13,3554 44346 CS PRIO30
056754,000825: 13,3555 70106 MASK FLGWRD10
056755,000826: 13,3556 54106 TS FLGWRD10 # RELEASE STALL AREA
056756,000827: 13,3557 00003 RELINT
056757,000828: 13,3560 13563 TCF GOBAC
056758,000829: 13,3561 34753 OKTOGRAB CAF INTFLBIT
056759,000830: 13,3562 26106 ADS FLGWRD10
056760,000831: 13,3563 06006 GOBAC TC INTPRET
056761,000832: 13,3564 77616 RVQ
056762,000833: 13,3565 27517 WAKESTAL CADR INTSTALL +1
Page 1326 |
056764,000835: # AVETOMID
056765,000836:
056766,000837: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
056767,000838: # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
056768,000839: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
056769,000840:
056770,000841: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLG IS
056771,000842: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
056772,000843:
056773,000844: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
056774,000845:
056775,000846: # FINALLY TRKMKCNT IS ZEROED
056776,000847:
056777,000848: 35,2000 SETLOC INTINIT2
056778,000849: 35,2000 BANK
056779,000850:
056780,000851: 35,3677 COUNT* $$/INTIN
056781,000852: 35,3677 43020 AVETOMID STQ BON
056782,000853: 35,3700 02310 EGRESS
056783,000854: 35,3701 02716 RENDWFLG
056784,000855: 35,3702 73753 INT/W # W-MATRIX VALID, GO INTEGRATE IT
056785,000856: 35,3703 77614 BON
056786,000857: 35,3704 01711 ORBWFLAG
056787,000858: 35,3705 73753 INT/W # W-MATRIX VALID, GO INTEGRATE IT
056788,000859:
056789,000860: 35,3706 45174 SETCOAST AXT,2 CALL # NOW MOVE PROPERLY SCALED RN,VN AND
056790,000861: 35,3707 00002 2 # PIPTIME TO INTEGRATION ERASABLES.
056791,000862: 35,3710 27516 INTSTALL
056792,000863: 35,3711 77014 BON AXT,2
056793,000864: 35,3712 00315 AMOONFLG
056794,000865: 35,3713 73715 +2
056795,000866: 35,3714 00000 0
056796,000867: 35,3715 53775 VLOAD VSR*
056797,000868: 35,3716 01030 RN
056798,000869: 35,3717 57176 0,2
056799,000870: 35,3720 01503 STORE RRECT
056800,000871: 35,3721 15535 STODL RCV
056801,000872: 35,3722 01044 PIPTIME
056802,000873: 35,3723 25517 STOVL TET
056803,000874: 35,3724 01036 VN
056804,000875: 35,3725 45057 VSR* CALL
056805,000876: 35,3726 57176 0,2
056806,000877: 35,3727 23434 MINIRECT # FINISH SETTING UP STATE VECTOR
056807,000878: 35,3730 77634 RTB
056808,000879: 35,3731 26774 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
056809,000880: 35,3732 43014 SET BON
056810,000881: 35,3733 04063 CMOONFLG
056811,000882: 35,3734 00315 AMOONFLG
056812,000883: 35,3735 73740 +3
Page 1327 |
056814,000885: 35,3736 77614 CLEAR
056815,000886: 35,3737 04263 CMOONFLG
056816,000887:
056817,000888: 35,3740 71214 BON DLOAD # NOW DO LM
056818,000889: 35,3741 04307 SURFFLAG
056819,000890: 35,3742 75735 FAZAB5 # NO COASTING LM
056820,000891: 35,3743 01044 PIPTIME
056821,000892: 35,3744 34041 STCALL TDEC1
056822,000893: 35,3745 26744 SETIFLGS
056823,000894: 35,3746 45014 CLEAR CALL
056824,000895: 35,3747 01674 VINTFLAG
056825,000896: 35,3750 27236 INTEGRV
056826,000897: 35,3751 77650 GOTO
056827,000898: 35,3752 02310 EGRESS
056828,000899: 35,3753 45145 INT/W DLOAD CALL
056829,000900: 35,3754 01044 PIPTIME # INTEGRATE W THRU BURN
056830,000901: 35,3755 27516 INTSTALL
056831,000902: 35,3756 43014 SET SET
056832,000903: 35,3757 01476 DIM0FLAG # DO W-MATRIX
056833,000904: 35,3760 04476 AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
056834,000905: 35,3761 43014 CLEAR SET
056835,000906: 35,3762 01675 D6OR9FLG
056836,000907: 35,3763 01474 VINTFLAG
056837,000908: 35,3764 34041 STCALL TDEC1
056838,000909: 35,3765 27236 INTEGRV
056839,000910: 35,3766 77650 GOTO
056840,000911: 35,3767 73706 SETCOAST
056841,000912:
Page 1328 |
056843,000914: # MIDTOAV1
056844,000915:
056845,000916: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
056846,000917: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
056847,000918: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
056848,000919: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
056849,000920: # IS DONE AS IT IS FOR MIDTOAV2.
056850,000921: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
056851,000922:
056852,000923: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
056853,000924: # TO THE RETURN ADDRESS
056854,000925:
056855,000926: # IN EITHER CASE, BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
056856,000927: # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
056857,000928: # TION TIME AND MPAC IS SET TO THE DELTA TIME---
056858,000929: # TAT MINUS CURRENT TIME.
056859,000930:
056860,000931:
056861,000932: # MIDTOAV2
056862,000933:
056863,000934: # THIS ROUTINE INTEGRATES THE CSM STATE VECTOR TO CURRENT TIME PLUS
056864,000935: # INCREMENTS OF TIMEDELT SUCH THAT THE DIFFERENCE BETWEEN CURRENT TIME
056865,000936: # AND THE STATE VECTOR TIME AT THE END OF THE LAST STEP IS AT LEAST 5.6
056866,000937: # SECS.
056867,000938: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
056868,000939: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
056869,000940:
056870,000941: 13,2000 SETLOC INTINIT
056871,000942: 13,2000 BANK
056872,000943: 13,3566 COUNT* $$/R41
056873,000944: 13,3566 0773 EBANK= IRETURN1
056874,000945: 13,3566 45020 MIDTOAV2 STQ CALL
056875,000946: 13,3567 00773 IRETURN1
056876,000947: 13,3570 27516 INTSTALL
056877,000948: 13,3571 43145 DLOAD CLEAR
056878,000949: 13,3572 13771 TIMEDELT
056879,000950: 13,3573 04674 MID1FLAG
056880,000951: 13,3574 37466 STCALL T-TO-ADD
056881,000952: 13,3575 27612 ENTMID2
056882,000953:
056883,000954: 13,3576 45020 MIDTOAV1 STQ CALL
056884,000955: 13,3577 00773 IRETURN1
056885,000956: 13,3600 27516 INTSTALL
056886,000957: 13,3601 47014 SET RTB
056887,000958: 13,3602 04474 MID1FLAG
056888,000959: 13,3603 51751 LOADTIME
056889,000960: 13,3604 44215 DAD BDSU # INITIAL CHECK, IS TDEC1 IN THE FUTURE.
056890,000961: 13,3605 13771 TIMEDELT
056891,000962: 13,3606 00041 TDEC1
056892,000963: 13,3607 45044 BPL CALL
Page 1329 |
056894,000965: 13,3610 27616 ENTMID1
056895,000966: 13,3611 13756 NOTIME # NO SET ALARM.SWITCH TO MIDTOAV2
056896,000967:
056897,000968: 13,3612 43234 ENTMID2 RTB DAD
056898,000969: 13,3613 51751 LOADTIME
056899,000970: 13,3614 03466 T-TO-ADD
056900,000971: 13,3615 00041 STORE TDEC1
056901,000972:
056902,000973: 13,3616 45014 ENTMID1 CLEAR CALL
056903,000974: 13,3617 01676 DIM0FLAG # NO W-MATRIX
056904,000975: 13,3620 26034 THISVINT
056905,000976: 13,3621 43014 CLEAR SET
056906,000977: 13,3622 01673 INTYPFLG
056907,000978: 13,3623 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
056908,000979: 13,3624 77624 CALL
056909,000980: 13,3625 27236 INTEGRV # GO INTEGRATE
056910,000981: 13,3626 66134 SXA,2 SXA,1
056911,000982: 13,3627 03746 RTX2
056912,000983: 13,3630 03745 RTX1
056913,000984: 13,3631 67214 CLEAR SLOAD
056914,000985: 13,3632 00275 AMOONFLG
056915,000986: 13,3633 03747 RTX2
056916,000987: 13,3634 43054 BZE SET
056917,000988: 13,3635 27637 +2
056918,000989: 13,3636 00075 AMOONFLG
056919,000990: 13,3637 77775 VLOAD
056920,000991: 13,3640 00001 RATT
056921,000992: 13,3641 25071 STOVL RN1
056922,000993: 13,3642 00007 VATT
056923,000994: 13,3643 15077 STODL VN1
056924,000995: 13,3644 00015 TAT
056925,000996: 13,3645 01105 STORE PIPTIME1
056926,000997: 13,3646 77776 EXIT
056927,000998:
056928,000999: 13,3647 00004 INHINT
056929,001000: 13,3650 00006 EXTEND
056930,001001: 13,3651 40025 DCS TIME2
056931,001002: 13,3652 20155 DAS MPAC
056932,001003: 13,3653 07226 TC TPAGREE
056933,001004:
056934,001005: 13,3654 30773 CA IRETURN1
056935,001006: 13,3655 04660 TC BANKJUMP
056936,001007: 13,3656 47014 CKMID2 BOF RTB
056937,001008: 13,3657 04754 MID1FLAG
056938,001009: 13,3660 27675 MID2
056939,001010: 13,3661 51751 LOADTIME
056940,001011: 13,3662 44215 DAD BDSU
056941,001012: 13,3663 13771 TIMEDELT
056942,001013: 13,3664 00745 TDEC
056943,001014: 13,3665 45044 BPL CALL
Page 1330 |
056945,001016: 13,3666 27364 TESTLOOP # YES
056946,001017: 13,3667 13756 NOTIME
056947,001018:
056948,001019: 13,3670 43234 TIMEINC RTB DAD
056949,001020: 13,3671 51751 LOADTIME
056950,001021: 13,3672 03466 T-TO-ADD
056951,001022: 13,3673 34745 STCALL TDEC
056952,001023: 13,3674 27364 TESTLOOP
056953,001024:
056954,001025: 13,3675 45345 MID2 DLOAD DSU
056955,001026: 13,3676 00745 TDEC
056956,001027: 13,3677 01517 TET
056957,001028: 13,3700 45246 ABS DSU
056958,001029: 13,3701 13755 3CSECS
056959,001030: 13,3702 77644 BPL
056960,001031: 13,3703 27670 TIMEINC
056961,001032:
056962,001033: 13,3704 44234 RTB BDSU # SEE IF 5.6 SECS. AVAILABLE TO CALLER.
056963,001034: 13,3705 51751 LOADTIME
056964,001035: 13,3706 01517 TET
056965,001036: 13,3707 51025 DSU BPL
056966,001037: 13,3710 13773 5.6SECS
056967,001038: 13,3711 27252 A-PCHK # YES,GET OUT.
056968,001039:
056969,001040: 13,3712 43345 DLOAD DAD # NO, ADD TIMEDELT TO T-TO-ADD AND TRY
056970,001041: 13,3713 03466 T-TO-ADD # AGAIN.
056971,001042: 13,3714 13771 TIMEDELT
056972,001043: 13,3715 37466 STCALL T-TO-ADD
056973,001044: 13,3716 27670 TIMEINC
056974,001045:
056975,001046:
056976,001047: 05,2000 SETLOC INTINIT3
056977,001048: 05,2000 BANK
056978,001049:
056979,001050: 05,3754 COUNT* $$/R41
056980,001051: 05,3754 00000 00003 3CSECS 2DEC 3 B-28
056981,001052:
056982,001053: 05,3756 77414 NOTIME CLEAR EXIT # TOO LATE
056983,001054: 05,3757 04674 MID1FLAG
056984,001055: 05,3760 24773 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
056985,001056: 05,3761 05671 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
056986,001057: 05,3762 01703 OCT 1703 # TIG WILL BE SLIPPED...
056987,001058: 05,3763 06006 TC INTPRET
056988,001059: 05,3764 77745 DLOAD
056989,001060: 05,3765 13771 TIMEDELT
056990,001061: 05,3766 03466 STORE T-TO-ADD
056991,001062: 05,3767 77616 RVQ
056992,001063:
056993,001064: 05,3770 00000 02342 TIMEDELT 2DEC 1250 B-28
Page 1331 |
056995,001066: 05,3772 00000 01060 5.6SECS 2DEC 560 B-28
056996,001067: 27,2000 SETLOC UPDATE2
056997,001068: 27,2000 BANK
056998,001069: 27,3072 COUNT* $$/INTIN
056999,001070:
057000,001071: 27,3072 E3,1706 EBANK= TEPHEM
057001,001072: 27,3072 06006 INTWAKEU TC INTPRET
057002,001073:
057003,001074: 27,3073 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
057004,001075: 27,3074 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
057005,001076: 27,3075 57141 INTWAKUP
057006,001077:
057007,001078: 27,3076 77775 VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
057008,001079: 27,3077 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
057009,001080: 27,3100 25535 STOVL RCV
057010,001081: 27,3101 01511 VRECT # NOW GO TO 'RECTIFY +13D' TO
057011,001082: 27,3102 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
057012,001083: 27,3103 23435 TINIRECT # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
057013,001084: 27,3104 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF 'UPSVFLAG'
057014,001085: 27,3105 01502 UPSVFLAG # TO 'UPDATE MOON STATE VECTOR CODE'
057015,001086: 27,3106 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
057016,001087: 27,3107 17150 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
057017,001088: 27,3110 57115 INTWAKEM # SPHERE OF INFLUENCE.........
057018,001089: 27,3111 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
057019,001090: 27,3112 00000 DEC 0 B-14
057020,001091: 27,3113 00223 MOONFLAG
057021,001092: 27,3114 57120 INTWAKEC
057022,001093: 27,3115 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE.
057023,001094: 27,3116 00002 DEC 2 B-14
057024,001095: 27,3117 00063 MOONFLAG
057025,001096: 27,3120 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
057026,001097: # MOONFLAG SET (OR CLEARED).
057027,001098: 27,3121 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
057028,001099: 27,3122 57130 INTWAKLM # STATE VECTOR UPDATE......
057029,001100: 27,3123 77624 CALL # UPDATE CSM STATE VECTOR
057030,001101: 27,3124 26761 ATOPCSM
057031,001102:
057032,001103: 27,3125 52014 CLEAR GOTO
057033,001104: 27,3126 01671 ORBWFLAG
057034,001105: 27,3127 57132 INTWAKEX
057035,001106:
057036,001107: 27,3130 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
057037,001108: 27,3131 27034 ATOPLEM
057038,001109:
057039,001110: 27,3132 77414 INTWAKEX CLEAR EXIT
057040,001111: 27,3133 02676 RENDWFLG
057041,001112:
057042,001113: 27,3134 34772 CAF ZERO
057043,001114: 27,3135 00006 EXTEND
Page 1332 |
057045,001116:
057046,001117: 27,3136 01077 WRITE CHAN77 # ZERO CHANNEL 77
057047,001118: 27,3137 55501 TS UPSVFLAG
057048,001119:
057049,001120: 27,3140 06006 TC INTPRET
057050,001121: 27,3141 77624 INTWAKUP CALL
057051,001122: 27,3142 27525 INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
057052,001123: 27,3143 77776 EXIT
057053,001124:
057054,001125: 27,3144 05402 TC PHASCHNG
057055,001126: 27,3145 04026 OCT 04026
057056,001127: 27,3146 03706 TC UPOUT +1
057057,001128:
057058,001129: 27,3147 00002 UPMNSVCD OCT 2
057059,001130: 27,3150 00000 OCT 0
057060,001131:
057061,001132: 11,2000 SETLOC ORBITAL
057062,001133: 11,2000 BANK
057063,001134:
057064,001135: 11,2327 COUNT* $$/ORBIT
057065,001136: 11,2327 77420 GRP2PC STQ EXIT
057066,001137: 11,2330 03536 GRP2SVQ
057067,001138: 11,2331 05402 TC PHASCHNG
057068,001139: 11,2332 04022 OCT 04022
057069,001140: 11,2333 06006 TC INTPRET
057070,001141: 11,2334 77650 GOTO
057071,001142: 11,2335 03536 GRP2SVQ
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc