Source Code
|
These source-code files are part of a reconstructed copy of Luminary 178, the
final release of the Apollo 14 Lunar Module (LM) Apollo Guidance Computer
(AGC) software.
The reconstruction began with source code of Zerlina 56, Luminary 210, and Luminary 131, previously transcribed from digitized copies of those programs. The code was created by combining the three, using Zerlina 56 as a base, since it was based off of Luminary 183. The differences between the three were carefully merged using the Luminary memos as a guide, with all changes made after Luminary 178 being backed out. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 178 listing would be different. 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. |
050940,000002: ## Copyright: Public domain.
050941,000003: ## Filename: INTEGRATION_INITIALIZATION.agc
050942,000004: ## Purpose: A section of Luminary revision 178.
050943,000005: ## It is part of the reconstructed source code for the final
050944,000006: ## release of the flight software for the Lunar Module's
050945,000007: ## (LM) Apollo Guidance Computer (AGC) for Apollo 14. The
050946,000008: ## code has been recreated from copies of Zerlina 56, Luminary
050947,000009: ## 210, and Luminary 131, as well as many Luminary memos.
050948,000010: ## It has been adapted such that the resulting bugger words
050949,000011: ## exactly match those specified for Luminary 178 in NASA
050950,000012: ## drawing 2021152N, which gives relatively high confidence
050951,000013: ## that the reconstruction is correct.
050952,000014: ## Reference: pp. 1195-1216
050953,000015: ## Assembler: yaYUL
050954,000016: ## Contact: Ron Burkey <info@sandroid.org>.
050955,000017: ## Website: www.ibiblio.org/apollo/index.html
050956,000018: ## Mod history: 2019-08-14 MAS Created from Zerlina 56.
050957,000019:
|
Page 1195 |
050959,000021: # 1.0 INTRODUCTION
050960,000022: # ----------------
050961,000023:
050962,000024: # FROM A USERS POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
050963,000025: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
050964,000026: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
050965,000027: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
050966,000028: # SIDE THE LUNAR SPHERE OF INFLUENCE.
050967,000029:
050968,000030: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
050969,000031: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
050970,000032: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
050971,000033: # CALL TC INTSTALL.
050972,000034:
050973,000035: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
050974,000036: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
050975,000037: # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
050976,000038: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
050977,000039: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
050978,000040:
050979,000041: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
050980,000042: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
050981,000043: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
050982,000044: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
050983,000045:
050984,000046: # 2.0 GENERAL DESCRIPTION
050985,000047: # -----------------------
050986,000048:
050987,000049: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS---
050988,000050: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
050989,000051: # 2) INTEGRATES THE W-MATRIX
050990,000052: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
050991,000053:
050992,000054: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
050993,000055: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
050994,000056: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
050995,000057: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
050996,000058: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
050997,000059: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
050998,000060: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
050999,000061: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
051000,000062: # AND/OR STATE VECTOR.
051001,000063:
051002,000064: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
051003,000065: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
051004,000066: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
051005,000067:
051006,000068: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS.
051007,000069: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
051008,000070: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
051009,000071:
|
Page 1196 |
051011,000073: # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
051012,000074:
051013,000075: # 2.1 RESTARTS
051014,000076:
051015,000077: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
051016,000078: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
051017,000079: # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
051018,000080: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
051019,000081: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
051020,000082: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
051021,000083: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
051022,000084:
051023,000085: # 2.2 SCALING
051024,000086:
051025,000087: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
051026,000088: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTORDEPENDS ON THE ORIGIN OF THE COORDINATE
051027,000089: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
051028,000090: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
051029,000091: # DIFFERENT SCALING.
051030,000092: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
051031,000093:
051032,000094: # 3.0 INPUT/OUTPUT
051033,000095: # ----------------
051034,000096:
051035,000097: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
051036,000098: # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
051037,000099: # FOR INTEGRVS, THE RCV,VCV, TET OF THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
051038,000100:
051039,000101: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
051040,000102: # EARTH MOON
051041,000103: # 29 27
051042,000104: # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
051043,000105:
051044,000106: # 7 5
051045,000107: # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
051046,000108:
051047,000109: # 28 28
051048,000110: # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
051049,000111: # CUSTOMARILY 0, BUT NOTE LUNAR
051050,000112: # ORBIT DEPENDENCE ON REAL TIME.
051051,000113:
051052,000114: # 22 18
051053,000115: # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
051054,000116: # 0 IF TCCSM(LEM) = 0
051055,000117:
051056,000118: # 3 -1
051057,000119: # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
051058,000120: # 0 IF TCCSM(LEM) = 0
051059,000121:
|
Page 1197 |
051061,000123: # 29 27
051062,000124: # RCVCSM(LEM) - CONIC POSITION METERS 2 2
051063,000125: # EQUALS RRECTCSM(LEM) IF
051064,000126: # TCCSM(LEM) = 0
051065,000127:
051066,000128: # 7 5
051067,000129: # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
051068,000130: # EQUALS VRECTCSM(LEM) IF
051069,000131: # TCCSM(LEM) = 0
051070,000132:
051071,000133: # 28 28
051072,000134: # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
051073,000135: # CUSTOMARILY 0
051074,000136:
051075,000137: # 1/2 17 16
051076,000138: # XKEPCSM(LEM) - ROOT OF KEPLERS EQUATION M 2 2
051077,000139: # 0 IF TCCSM(LEM) = 0
051078,000140:
051079,000141: # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
051080,000142: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
051081,000143: # LMOONFLG C = CSM, L = LM 0 0
051082,000144: # LMIDFLG 0,1 0,1
051083,000145:
051084,000146: # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
051085,000147:
051086,000148: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
051087,000149: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
051088,000150: # ROUTINE MUST BE PRESET.
051089,000151:
051090,000152: # OUTPUT
051091,000153: # AFTER EVERY CALL TO INTEGRATION
051092,000154: # EARTH MOON
051093,000155: # 29 29
051094,000156: # 0D RATT POSITION METERS 2 2
051095,000157: # 7 7
051096,000158: # 6D VATT VELOCITY M/CSEC 2 2
051097,000159: # 28 28
051098,000160: # 12D TAT TIME 2 2
051099,000161: # 29 27
051100,000162: # 14D RATT1 POSITION METERS 2 2
051101,000163: # 7 5
051102,000164: # 20D VATT1 VELOCITY M/CSEC 2 2
051103,000165: # 3 2 36 30
051104,000166: # 26D MU(P) MU M /CS 2 2
051105,000167:
051106,000168: # X1 MUTABLE ENTRY -2 -10D
051107,000169:
051108,000170: # X2 COORDINT
051109,000171: # X2 COORDINATE SYSTEM ORIGEN 0 2
051110,000172: # (THIS, NOT MOONFLAG, SHOULD BE
|
Page 1198 |
051112,000174: # USED TO DETERMINE ORIGIN.)
051113,000175:
051114,000176: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
051115,000177: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
051116,000178: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
051117,000179: # CALLING PROGRAM.
051118,000180:
051119,000181: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
051120,000182: # -------------------------------------
051121,000183:
051122,000184: # A) PRECISION ORBITAL INTEGRATION. CSMPREC,LEMPREC ENTRANCES
051123,000185: # L-X STORE TIME TO 95T5791T5 T 95 PUS L9ST (T4531)
051124,000186: # L CALL
051125,000187: # L+1 CSMPREC (OR LEMPREC)
051126,000188: # L+2 RETURN
051127,000189: # INPUT 28
051128,000190: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
051129,000191: # OUTPUT
051130,000192: # THE DATA LISTED IN SECTION 3.0 PLUS
051131,000193: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
051132,000194: # BODY... METERS B-29 ONLY IF MIDFLAG = DIM0FLAG = 1
051133,000195: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
051134,000196: # L-X STORE TIME IN PUSH LIST (TDEC1)
051135,000197: # L CALL
051136,000198: # L+1 CSMCONIC (OR LEMCONIC)
051137,000199: # INPUT/OUTPUT
051138,000200: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
051139,000201: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
051140,000202: # CALL
051141,000203: # INTSTALL
051142,000204: # VLOAD
051143,000205: # POSITION VECTOR
051144,000206: # STOVL RCV
051145,000207: # VELOCITY VECTOR
051146,000208: # STODL VCV
051147,000209: # TIME STATE VECTOR VALID
051148,000210: # STODL TET
051149,000211: # FINAL RADIUS
051150,000212: # STORE RFINAL
051151,000213: # SET(CLEAR) SET(CLEAR)
051152,000214: # INTYPFLAG
051153,000215: # MOONFLAG
051154,000216: # SET(CLEAR) DLOAD
051155,000217: # DESIRED TIME
051156,000218: # STCALL TDEC1
051157,000219: # INTEGRVS
051158,000220: # INPUT
051159,000221: # RCV POSITION VECTOR METERS
051160,000222: # VCV VELOCITY VECTOR M/CSEC
051161,000223: # TET TIME OF STATE VECTOR(MAY = 0) CSEC B-28
|
Page 1199 |
051163,000225: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
051164,000226: # (MAY BE INCREMENT IF TET=0)
051165,000227: # OUTPUT
051166,000228: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
051167,000229: # DEPENDING ON INTYPFLG.
051168,000230: # D) INTEGRATE STATE VECTOR.INTGRV ENTRANCE
051169,000231: # L-X STORE TIME IN PUSH LIST (TDEC1)(MAY BE DONE AFTER CALL TO INTSTALL)
051170,000232: # L-8 CALL
051171,000233: # L-7
051172,000234: # L-6 SET(CLEAR) SET(CLEAR)
051173,000235: # L-5 VINTFLAG 1=CSM, 0=LM
051174,000236: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
051175,000237: # L-3 SET(CLEAR) SET(CLEAR)
051176,000238: # L-2 DIM0FLAG 1=W-MATRIX, 0=NO W-MATRIX
051177,000239: # L-1 D6OR9FLG 1=9X9, 0=6X6
051178,000240: # L SET DLOAD
051179,000241: # L+1 STATEFLG DESIRE PERMANENT UPDATE
051180,000242: # L+2 FINAL RAD. OF STATE VECTOR
051181,000243: # L+3 STCALL RFINAL
051182,000244: # L+4 INTEGRV
051183,000245: # L CALL NORMAL USE -- WILL UPDATE STATE
051184,000246: # L+1 INTEGRV VECTOR IF DIM0FLAG=1.(STATEFLG IS
051185,000247: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
051186,000248: # IT IS USED.)
051187,000249: # INPUT
051188,000250: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
051189,000251: # OUTPUT
051190,000252: # SAME AS FOR PRECISION OR CONIC INTEGRATION
051191,000253: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
051192,000254: # THE PERMANENT STATE VECTOR REPRESENTATION.
051193,000255:
051194,000256: 11,2404 BANK 11
051195,000257: 13,2000 SETLOC INTINIT
051196,000258: 13,2000 BANK
051197,000259: 13,2602 E3,1554 EBANK= RRECTCSM
051198,000260: 13,2602 COUNT* $$/INTIN
051199,000261: 13,2602 05364 STATEINT TC PHASCHNG
051200,000262: 13,2603 00052 OCT 00052
051201,000263: 13,2604 35017 CAF PRIO5
051202,000264: 13,2605 05105 TC FINDVAC
051203,000265: 13,2606 E3,1554 EBANK= RRECTCSM
051204,000266: 13,2606 02611 26063 2CADR STATINT1
051205,000267:
051206,000268: 13,2610 05272 TC TASKOVER
051207,000269: 13,2611 06042 STATINT1 TC INTPRET
051208,000270: 13,2612 47014 BON RTB
051209,000271: 13,2613 04712 QUITFLAG # KILL INTEGRATION UNTIL NEXT POO.
051210,000272: 13,2614 26652 NOINT
051211,000273: 13,2615 21574 LOADTIME
051212,000274: 13,2616 00041 STORE TDEC1
051213,000275:
|
Page 1200 |
051215,000277: 13,2617 77624 CALL
051216,000278: 13,2620 27410 INTSTALL
051217,000279: 13,2621 45014 SET CALL
051218,000280: 13,2622 01076 NODOFLAG
051219,000281: 13,2623 26643 SETIFLGS
051220,000282: 13,2624 52014 SET GOTO
051221,000283: 13,2625 01460 POOHFLAG
051222,000284: 13,2626 26026 STATEUP
051223,000285: 13,2627 00003 25140 600SECS 2DEC 60000 B-28
051224,000286:
051225,000287: 13,2631 77414 ENDINT CLEAR EXIT
051226,000288: 13,2632 01672 STATEFLG
051227,000289: 13,2633 05364 TC PHASCHNG
051228,000290: 13,2634 20032 OCT 20032
051229,000291: 13,2635 00006 EXTEND
051230,000292: 13,2636 32630 DCA 600SECS
051231,000293: 13,2637 05310 TC LONGCALL
051232,000294: 13,2640 E3,1626 EBANK= RRECTHIS
051233,000295: 13,2640 02602 26063 2CADR STATEINT
051234,000296:
051235,000297: 13,2642 05155 TC ENDOFJOB
051236,000298: 13,2643 43014 SETIFLGS SET CLEAR
051237,000299: 13,2644 01472 STATEFLG
051238,000300: 13,2645 01673 INTYPFLG
051239,000301: 13,2646 43014 CLEAR CLEAR
051240,000302: 13,2647 01676 DIM0FLAG
051241,000303: 13,2650 01675 D6OR9FLG
051242,000304: 13,2651 77616 RVQ
051243,000305: 13,2652 77776 NOINT EXIT
051244,000306: 13,2653 05364 TC PHASCHNG
051245,000307: 13,2654 00002 OCT 00002
051246,000308:
051247,000309: 13,2655 05527 TC DOWNFLAG
051248,000310: 13,2656 00221 ADRES QUITFLAG
051249,000311: 13,2657 05155 TC ENDOFJOB
051250,000312:
051251,000313: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
051252,000314:
051253,000315: # CALLING SEQUENCE
051254,000316: # L CALL
051255,000317: # L+1 ATOPCSM
051256,000318:
051257,000319: # NORMAL EXIT AT L+2
051258,000320:
051259,000321: 13,2660 47020 ATOPCSM STQ RTB
051260,000322: 13,2661 00051 S2
051261,000323: 13,2662 26673 MOVEACSM
051262,000324: 13,2663 45014 SET CALL
051263,000325: 13,2664 04063 CMOONFLG
051264,000326: 13,2665 26114 SVDWN1
051265,000327:
|
Page 1201 |
051267,000329: 13,2666 43014 BON CLRGO
051268,000330: 13,2667 00303 MOONFLAG
051269,000331: 13,2670 00051 S2
051270,000332: 13,2671 04223 CMOONFLG
051271,000333: 13,2672 00051 S2
051272,000334: 13,2673 03035 MOVEACSM TC SETBANK
051273,000335: 13,2674 55500 TS DIFEQCNT # INITIALIZE INDEX
051274,000336: 13,2675 51500 INDEX DIFEQCNT
051275,000337: 13,2676 31502 CA RRECT
051276,000338: 13,2677 51500 INDEX DIFEQCNT
051277,000339: 13,2700 55554 TS RRECTCSM
051278,000340: 13,2701 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
051279,000341: 13,2702 12674 TCF MOVEACSM +1 # NO-LOOP
051280,000342: 13,2703 06064 TC DANZIG # COMPLETE- RETURN
051281,000343:
051282,000344:
051283,000345: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
051284,000346:
051285,000347: # CALLING SEQUENCE
051286,000348: # L CALL
051287,000349: # PTOACSM
051288,000350:
051289,000351: # NORMAL EXIT AT L+2
051290,000352:
051291,000353: 13,2704 43034 PTOACSM RTB BON
051292,000354: 13,2705 26722 MOVEPCSM
051293,000355: 13,2706 04303 CMOONFLG
051294,000356: 13,2707 26715 SETMOON
051295,000357: 13,2710 66214 CLRMOON CLEAR SSP
051296,000358: 13,2711 00263 MOONFLAG
051297,000359: 13,2712 02031 PBODY
051298,000360: 13,2713 00000 0
051299,000361: 13,2714 77616 RVQ
051300,000362: 13,2715 66214 SETMOON SET SSP
051301,000363: 13,2716 00063 MOONFLAG
051302,000364: 13,2717 02031 PBODY
051303,000365: 13,2720 00002 2
051304,000366: 13,2721 77616 RVQ
051305,000367: 13,2722 03035 MOVEPCSM TC SETBANK
051306,000368: 13,2723 55500 TS DIFEQCNT
051307,000369: 13,2724 51500 INDEX DIFEQCNT
051308,000370: 13,2725 31554 CA RRECTCSM
051309,000371: 13,2726 51500 INDEX DIFEQCNT
051310,000372: 13,2727 55502 TS RRECT
051311,000373: 13,2730 11500 CCS DIFEQCNT
051312,000374: 13,2731 12723 TCF MOVEPCSM +1
051313,000375: 13,2732 06064 TC DANZIG
051314,000376:
051315,000377:
051316,000378: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
051317,000379:
|
Page 1202 |
051319,000381: 13,2733 47020 ATOPLEM STQ RTB
051320,000382: 13,2734 00051 S2
051321,000383: 13,2735 26746 MOVEALEM
051322,000384: 13,2736 45014 SET CALL
051323,000385: 13,2737 04064 LMOONFLG
051324,000386: 13,2740 26070 SVDWN2
051325,000387: 13,2741 43014 BON CLRGO
051326,000388: 13,2742 00303 MOONFLAG
051327,000389: 13,2743 00051 S2
051328,000390: 13,2744 04224 LMOONFLG
051329,000391: 13,2745 00051 S2
051330,000392: 13,2746 03035 MOVEALEM TC SETBANK
051331,000393: 13,2747 55500 TS DIFEQCNT
051332,000394: 13,2750 51500 INDEX DIFEQCNT
051333,000395: 13,2751 31502 CA RRECT
051334,000396: 13,2752 51500 INDEX DIFEQCNT
051335,000397: 13,2753 55626 TS RRECTLEM
051336,000398: 13,2754 11500 CCS DIFEQCNT
051337,000399: 13,2755 12747 TCF MOVEALEM +1
051338,000400: 13,2756 06064 TC DANZIG
051339,000401:
051340,000402:
051341,000403: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
051342,000404:
051343,000405: 13,2757 47014 PTOALEM BON RTB
051344,000406: 13,2760 04307 SURFFLAG
051345,000407: 13,2761 27000 USEPIOS
051346,000408: 13,2762 26767 MOVEPLEM
051347,000409: 13,2763 52014 BON GOTO
051348,000410: 13,2764 04304 LMOONFLG
051349,000411: 13,2765 26715 SETMOON
051350,000412: 13,2766 26710 CLRMOON
051351,000413: 13,2767 03035 MOVEPLEM TC SETBANK
051352,000414: 13,2770 55500 TS DIFEQCNT
051353,000415: 13,2771 51500 INDEX DIFEQCNT
051354,000416: 13,2772 31626 CA RRECTLEM
051355,000417: 13,2773 51500 INDEX DIFEQCNT
051356,000418: 13,2774 55502 TS RRECT
051357,000419: 13,2775 11500 CCS DIFEQCNT
051358,000420: 13,2776 12770 TCF MOVEPLEM +1
051359,000421: 13,2777 06064 TC DANZIG
051360,000422:
051361,000423:
051362,000424: 13,3000 77201 USEPIOS SETPD VLOAD
051363,000425: 13,3001 00001 0
051364,000426: 13,3002 02021 RLS
051365,000427: 13,3003 41525 PDDL PUSH
051366,000428: 13,3004 00041 TDEC1
051367,000429: 13,3005 15517 STODL TET
051368,000430: 13,3006 27733 5/8
051369,000431:
|
Page 1203 |
051371,000433: 13,3007 77624 CALL
051372,000434: 13,3010 55720 RP-TO-R
051373,000435: 13,3011 25535 STOVL RCV
051374,000436: 13,3012 24001 ZUNIT
051375,000437: 13,3013 14001 STODL 0D
051376,000438: 13,3014 01517 TET
051377,000439: 13,3015 14007 STODL 6D
051378,000440: 13,3016 27733 5/8
051379,000441: 13,3017 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT
051380,000442: 13,3020 00063 MOONFLAG
051381,000443: 13,3021 55720 RP-TO-R
051382,000444: 13,3022 74235 VXV VXSC
051383,000445: 13,3023 01535 RCV
051384,000446: 13,3024 26001 OMEGMOON
051385,000447: 13,3025 25543 STOVL VCV
051386,000448: 13,3026 24007 ZEROVEC
051387,000449: 13,3027 01521 STORE TDELTAV
051388,000450: 13,3030 67174 AXT,2 SXA,2
051389,000451: 13,3031 00002 2
051390,000452: 13,3032 02030 PBODY
051391,000453: 13,3033 35527 STCALL TNUV
051392,000454: 13,3034 27156 A-PCHK
051393,000455: 13,3035 33041 SETBANK CAF INTBANK
051394,000456: 13,3036 54006 TS BBANK
051395,000457: 13,3037 33446 CAF FORTYONE
051396,000458: 13,3040 00002 TC Q
051397,000459: 13,3041 E3,1554 EBANK= RRECTCSM
051398,000460: 13,3041 26063 INTBANK BBCON INTEGRV
051399,000461:
051400,000462:
051401,000463: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
051402,000464: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
051403,000465:
051404,000466: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
051405,000467: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
051406,000468: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
051407,000469: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
051408,000470: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
051409,000471: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
051410,000472:
051411,000473: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
051412,000474: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
051413,000475: # CSMPREC CSMCONIC LEMPREC LEMCONIC
051414,000476: # VINTFLAG SET SET CLEAR CLEAR
051415,000477: # INTYPFLG CLEAR SET CLEAR SET
051416,000478: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
051417,000479:
051418,000480:
051419,000481: # CALLING SEQUENCE
051420,000482: # L-X STORE TDEC1
|
Page 1204 |
051422,000484: # L CALL (STCALL TDEC1)
051423,000485: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
051424,000486:
051425,000487: # NORMAL EXIT TO L+2
051426,000488:
051427,000489:
051428,000490: # SUBROUTINES CALLED
051429,000491: # INTEGRV1
051430,000492: # PRECOUT FOR CSMPREC AND LEMPREC
051431,000493: # CONICOUT FOR CSMCONIC AND LEMCONIC
051432,000494:
051433,000495:
051434,000496: # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
051435,000497: # INPUT
051436,000498: # TDEC1 TIME TO INTEGRATE TO . CSECS B-28
051437,000499: 13,3042 45020 CSMPREC STQ CALL
051438,000500: 13,3043 00046 X1
051439,000501: 13,3044 27410 INTSTALL
051440,000502: 13,3045 43130 SXA,1 SET
051441,000503: 13,3046 02102 IRETURN
051442,000504: 13,3047 01474 VINTFLAG
051443,000505:
051444,000506: 13,3050 43014 IFLAGP SET CLEAR
051445,000507: 13,3051 01467 PRECIFLG
051446,000508: 13,3052 01676 DIM0FLAG
051447,000509: 13,3053 77614 CLRGO
051448,000510: 13,3054 01633 INTYPFLG
051449,000511: 13,3055 27135 INTEGRV1
051450,000512: 13,3056 45020 LEMPREC STQ CALL
051451,000513: 13,3057 00046 X1
051452,000514: 13,3060 27410 INTSTALL
051453,000515: 13,3061 43130 SXA,1 CLRGO
051454,000516: 13,3062 02102 IRETURN
051455,000517: 13,3063 01634 VINTFLAG
051456,000518: 13,3064 27050 IFLAGP
051457,000519:
051458,000520: 13,3065 45020 CSMCONIC STQ CALL
051459,000521: 13,3066 00046 X1
051460,000522: 13,3067 27410 INTSTALL
051461,000523: 13,3070 43130 SXA,1 SET
051462,000524: 13,3071 02102 IRETURN
051463,000525: 13,3072 01474 VINTFLAG
051464,000526: 13,3073 43014 IFLAGC CLEAR SETGO
051465,000527: 13,3074 01676 DIM0FLAG
051466,000528: 13,3075 01433 INTYPFLG
051467,000529: 13,3076 27135 INTEGRV1
051468,000530: 13,3077 45020 LEMCONIC STQ CALL
051469,000531: 13,3100 00046 X1
051470,000532: 13,3101 27410 INTSTALL
051471,000533: 13,3102 43130 SXA,1 CLRGO
|
Page 1205 |
051473,000535: 13,3103 02102 IRETURN
051474,000536: 13,3104 01634 VINTFLAG
051475,000537: 13,3105 27073 IFLAGC
051476,000538:
051477,000539: 13,3106 66214 INTEGRVS SET SSP
051478,000540: 13,3107 01467 PRECIFLG
051479,000541: 13,3110 02031 PBODY
051480,000542: 13,3111 00000 0
051481,000543: 13,3112 66214 BOF SSP
051482,000544: 13,3113 00343 MOONFLAG
051483,000545: 13,3114 27117 +3
051484,000546: 13,3115 02031 PBODY
051485,000547: 13,3116 00002 2
051486,000548: 13,3117 77220 STQ VLOAD
051487,000549: 13,3120 02102 IRETURN
051488,000550: 13,3121 24007 ZEROVEC
051489,000551: 13,3122 01521 STORE TDELTAV
051490,000552: 13,3123 35527 STCALL TNUV
051491,000553: 13,3124 27671 RECTIFY
051492,000554: 13,3125 43014 CLEAR SET
051493,000555: 13,3126 01676 DIM0FLAG
051494,000556: 13,3127 04062 NEWIFLG
051495,000557: 13,3130 77614 SETGO
051496,000558: 13,3131 04020 RPQFLAG
051497,000559: 13,3132 27147 ALOADED
051498,000560: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER ,
051499,000561: # NORMALLY THE NAVIGATION PROGRAM ,TO SET THE INTEG. FLAGS. THE ROUTINE
051500,000562: # IS ENTERED AT INTEGRV1 BY CSMPREC ET.AL. AND AT ALOADED BY INTEGRVS.
051501,000563: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
051502,000564: # PROGRAM FOR PRECISION OR CONIC
051503,000565:
051504,000566: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
051505,000567: # SETTING ANY FLAGS.
051506,000568: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
051507,000569: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
051508,000570: # INTYPFLG
051509,000571: # DIM0FLAG
051510,000572: # D6OR9FLG
051511,000573: # CALLING SEQUENCE
051512,000574: # L-X CALL
051513,000575: # L-Y INTSTALL
051514,000576: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
051515,000577: # AND DIM0FLAG IS CLEAR.
051516,000578: # L CALL
051517,000579: # L+1 INTEGRV
051518,000580: # INITIALIZATION
051519,000581: # FLAGS AS ABOVE
051520,000582: # STORE TIME TO INTEGRATE TO IN TDEC1
051521,000583: # OUTPUT
051522,000584: # RATT AS
|
Page 1206 |
051524,000586: # VATT DEFINED
051525,000587: # TAT BEFORE
051526,000588:
051527,000589:
051528,000590: 13,3133 77620 INTEGRV STQ
051529,000591: 13,3134 02102 IRETURN
051530,000592: 13,3135 43014 INTEGRV1 SET SET
051531,000593: 13,3136 04060 RPQFLAG
051532,000594: 13,3137 04062 NEWIFLG
051533,000595: 13,3140 77731 INTEGRV2 SSP
051534,000596: 13,3141 00053 QPRET
051535,000597: 13,3142 27147 ALOADED
051536,000598: 13,3143 52014 BON GOTO
051537,000599: 13,3144 01714 VINTFLAG
051538,000600: 13,3145 26704 PTOACSM
051539,000601: 13,3146 26757 PTOALEM
051540,000602: 13,3147 77745 ALOADED DLOAD
051541,000603: 13,3150 00041 TDEC1
051542,000604: 13,3151 01115 STORE TDEC
051543,000605: 13,3152 52014 BOFF GOTO
051544,000606: 13,3153 01753 INTYPFLG
051545,000607: 13,3154 27256 TESTLOOP
051546,000608: 13,3155 27242 RVCON
051547,000609: 13,3156 77414 A-PCHK BOF EXIT
051548,000610: 13,3157 01752 STATEFLG
051549,000611: 13,3160 27177 RECTOUT
051550,000612: 13,3161 05364 TC PHASCHNG
051551,000613: 13,3162 04022 OCT 04022
051552,000614: 13,3163 05515 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
051553,000615: 13,3164 00236 ADRES REINTFLG # INTSTALL AND INTWAKE
051554,000616: 13,3165 06042 TC INTPRET
051555,000617: 13,3166 77731 SSP
051556,000618: 13,3167 00053 QPRET
051557,000619: 13,3170 27175 PHEXIT
051558,000620: 13,3171 52014 BON GOTO
051559,000621: 13,3172 01714 VINTFLAG
051560,000622: 13,3173 26660 ATOPCSM
051561,000623: 13,3174 26733 ATOPLEM
051562,000624: 13,3175 77624 PHEXIT CALL
051563,000625: 13,3176 11216 GRP2PC
051564,000626: 13,3177 45001 RECTOUT SETPD CALL
051565,000627: 13,3200 00001 0
051566,000628: 13,3201 27671 RECTIFY
051567,000629: 13,3202 53775 VLOAD VSL*
051568,000630: 13,3203 01503 RRECT
051569,000631: 13,3204 57576 0,2
051570,000632: 13,3205 53715 PDVL VSL* # RATT TO PD0
051571,000633: 13,3206 01511 VRECT
051572,000634: 13,3207 57576 0,2
051573,000635: 13,3210 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
|
Page 1207 |
051575,000637: 13,3211 01517 TET
051576,000638: 13,3212 01503 RRECT
051577,000639: 13,3213 64715 PDVL PDDL*
051578,000640: 13,3214 01511 VRECT
051579,000641: 13,3215 51770 MUEARTH,2
051580,000642: 13,3216 76006 PUSH AXT,1
051581,000643: 13,3217 77765 DEC -10 B-14
051582,000644: 13,3220 76014 BON AXT,1
051583,000645: 13,3221 00303 MOONFLAG
051584,000646: 13,3222 27224 +2
051585,000647: 13,3223 77775 DEC -2 B-14
051586,000648: 13,3224 40001 INTEXIT SETPD BOV
051587,000649: 13,3225 00001 0
051588,000650: 13,3226 27227 +1
051589,000651: 13,3227 43014 CLEAR CLEAR
051590,000652: 13,3230 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
051591,000653: 13,3231 01667 PRECIFLG
051592,000654: 13,3232 77614 CLEAR
051593,000655: 13,3233 01672 STATEFLG
051594,000656: 13,3234 77535 SLOAD EXIT
051595,000657: 13,3235 02103 IRETURN
051596,000658: 13,3236 30154 CA MPAC
051597,000659: 13,3237 50120 INDEX FIXLOC
051598,000660: 13,3240 54052 TS QPRET
051599,000661: 13,3241 03421 TC INTWAKE
051600,000662: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
051601,000663: # VELOCITY FOR THE INTERVAL (TET-TDEC)
051602,000664:
051603,000665: 13,3242 45345 RVCON DLOAD DSU
051604,000666: 13,3243 01115 TDEC
051605,000667: 13,3244 01517 TET
051606,000668: 13,3245 36074 STCALL TAU.
051607,000669: 13,3246 27671 RECTIFY
051608,000670: 13,3247 77624 CALL
051609,000671: 13,3250 22404 KEPPREP
051610,000672: 13,3251 43345 DLOAD DAD
051611,000673: 13,3252 01551 TC
051612,000674: 13,3253 01517 TET
051613,000675: 13,3254 35517 STCALL TET
051614,000676: 13,3255 27177 RECTOUT
051615,000677:
|
Page 1208 |
051617,000679: # TESTLOOP
051618,000680:
051619,000681: 13,3256 43014 TESTLOOP BOF CLRGO
051620,000682: 13,3257 04752 QUITFLAG
051621,000683: 13,3260 27263 +3
051622,000684: 13,3261 01632 STATEFLG
051623,000685: 13,3262 27224 INTEXIT # STOP INTEGRATION
051624,000686: 13,3263 73001 +3 SETPD LXA,2
051625,000687: 13,3264 00013 10D
051626,000688: 13,3265 02030 PBODY
051627,000689: 13,3266 51575 VLOAD ABVAL
051628,000690: 13,3267 01535 RCV
051629,000691: 13,3270 43006 PUSH CLEAR # RC TO 10D
051630,000692: 13,3271 00262 MIDFLAG
051631,000693: 13,3272 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP
051632,000694: 13,3273 53755 RME,2
051633,000695: 13,3274 27277 +3
051634,000696: 13,3275 77614 SET
051635,000697: 13,3276 00062 MIDFLAG
051636,000698: 13,3277 41345 NORFINAL DLOAD DMP
051637,000699: 13,3300 00013 10D
051638,000700: 13,3301 00043 34D
051639,000701: 13,3302 55762 SR1R DDV*
051640,000702: 13,3303 51770 MUEARTH,2
051641,000703: 13,3304 41366 SQRT DMP
051642,000704: 13,3305 25762 .3D
051643,000705: 13,3306 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE
051644,000706: 13,3307 54345 DLOAD SL
051645,000707: 13,3310 00155 MPAC
051646,000708: 13,3311 20220 15D # OF 128 CSECS.
051647,000709: 13,3312 40006 PUSH BOV
051648,000710: 13,3313 27340 MAXDT
051649,000711: 13,3314 50021 BDSU BMN
051650,000712: 13,3315 27407 DT/2MAX
051651,000713: 13,3316 27340 MAXDT
051652,000714: 13,3317 45345 DT/2COMP DLOAD DSU
051653,000715: 13,3320 01115 TDEC
051654,000716: 13,3321 01517 TET
051655,000717: 13,3322 54234 RTB SL
051656,000718: 13,3323 21613 SGNAGREE
051657,000719: 13,3324 20211 8D
051658,000720: 13,3325 02076 STORE DT/2 # B-19
051659,000721: 13,3326 51400 BOV ABS
051660,000722: 13,3327 27344 GETMAXDT
051661,000723: 13,3330 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
051662,000724: 13,3331 00015 12D
051663,000725: 13,3332 27350 P00HCHK
051664,000726: 13,3333 75345 USEMAXDT DLOAD SIGN
051665,000727: 13,3334 00015 12D
051666,000728: 13,3335 02076 DT/2
|
Page 1209 |
051668,000730: 13,3336 36076 STCALL DT/2
051669,000731: 13,3337 27350 P00HCHK
051670,000732: 13,3340 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
051671,000733: 13,3341 27407 DT/2MAX
051672,000734: 13,3342 77650 GOTO
051673,000735: 13,3343 27317 DT/2COMP
051674,000736: 13,3344 77634 GETMAXDT RTB
051675,000737: 13,3345 21713 SIGNMPAC
051676,000738: 13,3346 36076 STCALL DT/2
051677,000739: 13,3347 27333 USEMAXDT
051678,000740: 13,3350 51545 P00HCHK DLOAD ABS
051679,000741: 13,3351 02076 DT/2
051680,000742: 13,3352 50025 DSU BMN
051681,000743: 13,3353 27405 DT/2MIN
051682,000744: 13,3354 27156 A-PCHK
051683,000745: 13,3355 43014 BOFF BON # NO BACKWARDS INTEGRATION
051684,000746: 13,3356 01740 POOHFLAG # WHEN IN POO
051685,000747: 13,3357 23311 TIMESTEP
051686,000748: 13,3360 01707 PRECIFLG
051687,000749: 13,3361 23311 TIMESTEP
051688,000750: 13,3362 45345 DLOAD DSU
051689,000751: 13,3363 02076 DT/2
051690,000752: 13,3364 00015 12D
051691,000753: 13,3365 43040 BMN BOFCLR
051692,000754: 13,3366 27156 A-PCHK
051693,000755: 13,3367 04242 NEWIFLG
051694,000756: 13,3370 23311 TIMESTEP
051695,000757: 13,3371 45345 DLOAD DSU
051696,000758: 13,3372 01115 TDEC
051697,000759: 13,3373 01517 TET
051698,000760: 13,3374 77640 BMN # NO BACKWARD INTEGRATION
051699,000761: 13,3375 27224 INTEXIT
051700,000762: 13,3376 40525 PDDL SR4
051701,000763: 13,3377 02076 DT/2 # IS 4(DT) LS(TDEC - TET)
051702,000764: 13,3400 44322 SR2R BDSU # NO
051703,000765: 13,3401 52040 BMN GOTO
051704,000766: 13,3402 27224 INTEXIT
051705,000767: 13,3403 23311 TIMESTEP
051706,000768: 13,3404 00000 01400 DT/2MIN 2DEC 3 B-20
051707,000769:
051708,000770: 13,3406 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
051709,000771:
051710,000772: 13,3410 77776 INTSTALL EXIT
051711,000773: 13,3411 30106 CA RASFLAG
051712,000774: 13,3412 73462 MASK INTBITAB # IS THIS STALL AREA FREE
051713,000775: 13,3413 00006 EXTEND
051714,000776: 13,3414 13454 BZF OKTOGRAB # YES
051715,000777: 13,3415 33461 CAF WAKESTAL
051716,000778: 13,3416 05133 TC JOBSLEEP
051717,000779: 13,3417 77776 INTWAKE0 EXIT
|
Page 1210 |
051719,000781: 13,3420 13441 TCF INTWAKE1
051720,000782:
051721,000783: 13,3421 40106 INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
051722,000784: 13,3422 74745 MASK REINTBIT # RESTARTED
051723,000785: 13,3423 10000 CCS A
051724,000786: 13,3424 03441 TC INTWAKE1 # NO
051725,000787:
051726,000788: 13,3425 50120 INDEX FIXLOC
051727,000789: 13,3426 30052 CA QPRET
051728,000790: 13,3427 55054 TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
051729,000791:
051730,000792: 13,3430 05364 TC PHASCHNG
051731,000793: 13,3431 04022 OCT 04022
051732,000794:
051733,000795: 13,3432 31054 CA TBASE2
051734,000796: 13,3433 50120 INDEX FIXLOC
051735,000797: 13,3434 54052 TS QPRET
051736,000798:
051737,000799: 13,3435 34745 CAF REINTBIT
051738,000800: 13,3436 70106 MASK RASFLAG
051739,000801: 13,3437 00006 EXTEND
051740,000802: 13,3440 13457 BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
051741,000803:
051742,000804: 13,3441 33461 INTWAKE1 CAF WAKESTAL
051743,000805: 13,3442 00004 INHINT
051744,000806: 13,3443 05137 TC JOBWAKE
051745,000807: 13,3444 10064 CCS LOCCTR
051746,000808: 13,3445 13441 TCF INTWAKE1
051747,000809: 13,3446 00051 FORTYONE DEC 41 B-14
051748,000810: 13,3447 43462 CS INTBITAB
051749,000811: 13,3450 70106 MASK RASFLAG
051750,000812: 13,3451 54106 TS RASFLAG # RELEASE STALL AREA
051751,000813: 13,3452 00003 RELINT
051752,000814: 13,3453 13457 TCF GOBAC
051753,000815: 13,3454 34736 OKTOGRAB CAF INTFLBIT
051754,000816: 13,3455 00004 INHINT
051755,000817: 13,3456 26106 ADS RASFLAG
051756,000818: 13,3457 06042 GOBAC TC INTPRET
051757,000819: 13,3460 77616 RVQ
051758,000820: 13,3461 27411 WAKESTAL CADR INTSTALL +1
051759,000821: 13,3462 20100 INTBITAB OCT 20100
051760,000822:
|
Page 1211 |
051762,000824: # AVETOMID
051763,000825:
051764,000826: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
051765,000827: # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
051766,000828: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
051767,000829:
051768,000830: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLG IS
051769,000831: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
051770,000832:
051771,000833: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
051772,000834:
051773,000835: # FINALLY TRKMKCNT IS ZEROED
051774,000836:
051775,000837:
051776,000838: 13,2000 SETLOC INTINIT
051777,000839: 13,2000 BANK
051778,000840:
051779,000841: 13,3463 COUNT* $$/INTIN
051780,000842: 13,3463 43020 AVETOMID STQ BON
051781,000843: 13,3464 02772 EGRESS
051782,000844: 13,3465 02716 RENDWFLG
051783,000845: 13,3466 27532 INT/W # W-MATRIX VALID ,GO INTEGRATE IT
051784,000846: 13,3467 77614 BON
051785,000847: 13,3470 01711 ORBWFLAG
051786,000848: 13,3471 27532 INT/W # W-MATRIX VALID ,GO INTEGRATE IT
051787,000849:
051788,000850: 13,3472 45145 OTHERS DLOAD CALL # GET SET FOR OTHER VEHICLE INTEGRATION
051789,000851: 13,3473 01234 PIPTIME # DESIRED TIME
051790,000852: 13,3474 27410 INTSTALL
051791,000853: 13,3475 45014 SET CALL
051792,000854: 13,3476 01474 VINTFLAG # CM
051793,000855: 13,3477 26643 SETIFLGS # SETS UP NONE W-MAT. PERMANENT INTEG.
051794,000856: 13,3500 34041 STCALL TDEC1
051795,000857: 13,3501 27133 INTEGRV
051796,000858:
051797,000859: 13,3502 45174 AXT,2 CALL # NOW MOVE PROPERLY SCALE RN,UN AS WELL AS
051798,000860: 13,3503 00002 2 # PIPTIME TO INTEGRATION ERASABLES.
051799,000861: 13,3504 27410 INTSTALL
051800,000862: 13,3505 77014 BON AXT,2
051801,000863: 13,3506 04304 MOONTHIS
051802,000864: 13,3507 27511 +2
051803,000865: 13,3510 00000 0
051804,000866: 13,3511 53775 VLOAD VSR*
051805,000867: 13,3512 01220 RN
051806,000868: 13,3513 57176 0,2
051807,000869: 13,3514 01503 STORE RRECT
051808,000870: 13,3515 15535 STODL RCV
051809,000871: 13,3516 01234 PIPTIME
051810,000872: 13,3517 25517 STOVL TET
051811,000873: 13,3520 01226 VN
|
Page 1212 |
051813,000875: 13,3521 45057 VSR* CALL
051814,000876: 13,3522 57176 0,2
051815,000877: 13,3523 27705 MINIRECT # FINISH SETTING UP STATE VECTOR
051816,000878: 13,3524 66234 RTB SSP
051817,000879: 13,3525 26746 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
051818,000880: 13,3526 03463 TRKMKCNT
051819,000881: 13,3527 00000 0
051820,000882: 13,3530 77650 GOTO
051821,000883: 13,3531 47174 FAZAB5
051822,000884:
051823,000885: 13,3532 45145 INT/W DLOAD CALL
051824,000886: 13,3533 01234 PIPTIME # INTEGRATE W THRU BURN
051825,000887: 13,3534 27410 INTSTALL
051826,000888: 13,3535 43014 SET SET
051827,000889: 13,3536 01476 DIM0FLAG # DO W-MATRIX
051828,000890: 13,3537 04476 AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
051829,000891: 13,3540 43014 SET CLEAR
051830,000892: 13,3541 01475 D6OR9FLG # 9X9 FOR LM
051831,000893: 13,3542 01674 VINTFLAG # LM
051832,000894: 13,3543 34041 STCALL TDEC1
051833,000895: 13,3544 27133 INTEGRV
051834,000896: 13,3545 77650 GOTO
051835,000897: 13,3546 27472 OTHERS # NOW GO DO THE OTHER VEHICLE
051836,000898:
|
Page 1213 |
051838,000900: # MIDTOAV1
051839,000901:
051840,000902: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
051841,000903: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
051842,000904: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
051843,000905: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
051844,000906: # IS DONE TO THE CURRENT TIME.
051845,000907: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
051846,000908:
051847,000909: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
051848,000910: # TO THE RETURN ADDRESS
051849,000911:
051850,000912: # IN EITHER CASE , BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
051851,000913: # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
051852,000914: # TION TIME AND MPAC IS SET TO THE DELTA TIME---
051853,000915: # TAT MINUS CURRENT TIME.
051854,000916:
051855,000917:
051856,000918: # MIDTOAV2
051857,000919:
051858,000920: # THIS ROUTINE INTEGRATES THIS VEHICLES STATE VECTOR TO THE CURRENT TIME.
051859,000921: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
051860,000922: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
051861,000923:
051862,000924: 13,3547 E7,1744 EBANK= IRETURN1
051863,000925: 13,3547 43020 MIDTOAV2 STQ CLRGO # INTEGRATE TO PRESENT TIME PLUS TIMEDELT
051864,000926: 13,3550 03744 IRETURN1
051865,000927: 13,3551 04634 MID1FLAG
051866,000928: 13,3552 27566 ENTMID2
051867,000929:
051868,000930: 13,3553 43020 MIDTOAV1 STQ SET # INTEGRATE TO TDEC1
051869,000931: 13,3554 03744 IRETURN1
051870,000932: 13,3555 04474 MID1FLAG
051871,000933: 13,3556 43234 RTB DAD # INITIAL CHECK, IS TDEC1 IN THE FUTURE
051872,000934: 13,3557 21574 LOADTIME
051873,000935: 13,3560 27670 TIMEDELT
051874,000936: 13,3561 51021 BDSU BPL
051875,000937: 13,3562 00041 TDEC1
051876,000938: 13,3563 27572 ENTMID1 # Y5S
051877,000939: 13,3564 77624 CALL
051878,000940: 13,3565 27656 NOTIME # NO, SET ALARM, SWITCH TO MIDTOAV2
051879,000941:
051880,000942: 13,3566 43234 ENTMID2 RTB DAD
051881,000943: 13,3567 21574 LOADTIME
051882,000944: 13,3570 27670 TIMEDELT
051883,000945: 13,3571 00041 STORE TDEC1
051884,000946:
051885,000947: 13,3572 77624 ENTMID1 CALL
051886,000948: 13,3573 27410 INTSTALL
051887,000949: 13,3574 45014 CLEAR CALL
|
Page 1214 |
051889,000951: 13,3575 01676 DIM0FLAG # NO W-MATRIX
051890,000952: 13,3576 26066 THISVINT
051891,000953: 13,3577 43014 CLEAR SET
051892,000954: 13,3600 01673 INTYPFLG
051893,000955: 13,3601 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
051894,000956: 13,3602 77624 CALL
051895,000957: 13,3603 27133 INTEGRV # GO INTEGRATE
051896,000958: 13,3604 77214 CLEAR VLOAD
051897,000959: 13,3605 04675 MIDAVFLG
051898,000960: 13,3606 00001 RATT
051899,000961: 13,3607 27545 STOVL RN1
051900,000962: 13,3610 00007 VATT
051901,000963: 13,3611 17553 STODL VN1
051902,000964: 13,3612 00015 TAT
051903,000965: 13,3613 03561 STORE PIPTIME1
051904,000966: 13,3614 66134 SXA,2 SXA,1
051905,000967: 13,3615 02777 RTX2
051906,000968: 13,3616 02776 RTX1
051907,000969: 13,3617 77776 EXIT
051908,000970:
051909,000971: 13,3620 00004 INHINT
051910,000972: 13,3621 00006 EXTEND
051911,000973: 13,3622 40025 DCS TIME2
051912,000974: 13,3623 20155 DAS MPAC
051913,000975: 13,3624 07262 TC TPAGREE
051914,000976:
051915,000977: 13,3625 31744 CA IRETURN1
051916,000978: 13,3626 04640 TC BANKJUMP
051917,000979: 13,3627 47014 CKMID2 BOF RTB
051918,000980: 13,3630 04754 MID1FLAG
051919,000981: 13,3631 27646 MID2
051920,000982: 13,3632 21574 LOADTIME
051921,000983: 13,3633 44215 DAD BDSU
051922,000984: 13,3634 27670 TIMEDELT
051923,000985: 13,3635 01115 TDEC
051924,000986: 13,3636 45044 BPL CALL
051925,000987: 13,3637 27256 TESTLOOP # YES
051926,000988: 13,3640 27656 NOTIME
051927,000989:
051928,000990: 13,3641 43234 TIMEINC RTB DAD
051929,000991: 13,3642 21574 LOADTIME
051930,000992: 13,3643 27670 TIMEDELT
051931,000993: 13,3644 35115 STCALL TDEC
051932,000994: 13,3645 27256 TESTLOOP
051933,000995:
051934,000996: 13,3646 45345 MID2 DLOAD DSU
051935,000997: 13,3647 01115 TDEC
051936,000998: 13,3650 01517 TET
051937,000999: 13,3651 45246 ABS DSU
051938,001000: 13,3652 27666 3CSECS
|
Page 1215 |
051940,001002: 13,3653 52040 BMN GOTO
051941,001003: 13,3654 27156 A-PCHK
051942,001004: 13,3655 27641 TIMEINC
051943,001005:
051944,001006: 13,3656 77414 NOTIME CLEAR EXIT # TOO LATE
051945,001007: 13,3657 04674 MID1FLAG
051946,001008: 13,3660 25744 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
051947,001009: 13,3661 05600 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
051948,001010: 13,3662 01703 OCT 1703 # TIG WILL BE SLIPPED...
051949,001011: 13,3663 06042 TC INTPRET
051950,001012: 13,3664 77616 RVQ
051951,001013:
051952,001014: 13,3665 00000 00003 3CSECS 2DEC 3 B-28
051953,001015:
051954,001016: 13,3667 00000 03720 TIMEDELT 2DEC 2000 B-28
051955,001017:
051956,001018: 27,3361 BANK 27
051957,001019: 04,2000 SETLOC UPDATE2
051958,001020: 04,2000 BANK
051959,001021: 04,3137 E3,1706 EBANK= TEPHEM
051960,001022: 04,3137 COUNT* $$/INTIN
051961,001023:
051962,001024: 04,3137 06042 INTWAKEU TC INTPRET
051963,001025:
051964,001026: 04,3140 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
051965,001027: 04,3141 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
051966,001028: 04,3142 11206 INTWAKUP
051967,001029:
051968,001030: 04,3143 77775 VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
051969,001031: 04,3144 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
051970,001032: 04,3145 25535 STOVL RCV
051971,001033: 04,3146 01511 VRECT # NOW GO TO 'RECTIFY +13D' TO
051972,001034: 04,3147 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
051973,001035: 04,3150 27706 RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
051974,001036: 04,3151 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF 'UPSVFLAG'
051975,001037: 04,3152 01502 UPSVFLAG # TO 'UPDATE MOON STATE VECTOR CODE'
051976,001038: 04,3153 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
051977,001039: 04,3154 11215 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
051978,001040: 04,3155 11162 INTWAKEM # SPHERE OF INFLUENCE.........
051979,001041: 04,3156 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
051980,001042: 04,3157 00000 DEC 0 B-14
051981,001043: 04,3160 00223 MOONFLAG
051982,001044: 04,3161 11165 INTWAKEC
051983,001045: 04,3162 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE.
051984,001046: 04,3163 00002 DEC 2 B-14
051985,001047: 04,3164 00063 MOONFLAG
051986,001048: 04,3165 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
051987,001049: # MOONFLAG SET(OR CLEARED).
051988,001050: 04,3166 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
051989,001051: 04,3167 11175 INTWAKLM # STATE VECTOR UPDATE......
|
Page 1216 |
051991,001053: 04,3170 77624 CALL # UPDATE CSM STATE VECTOR
051992,001054: 04,3171 26660 ATOPCSM
051993,001055:
051994,001056: 04,3172 52014 CLEAR GOTO
051995,001057: 04,3173 01671 ORBWFLAG
051996,001058: 04,3174 11177 INTWAKEX
051997,001059:
051998,001060: 04,3175 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
051999,001061: 04,3176 26733 ATOPLEM
052000,001062:
052001,001063: 04,3177 77414 INTWAKEX CLEAR EXIT
052002,001064: 04,3200 02676 RENDWFLG
052003,001065:
052004,001066: 04,3201 34755 CAF ZERO
052005,001067: 04,3202 00006 EXTEND
052006,001068: 04,3203 01077 WRITE CHAN77 # ZERO CHANNEL 77
052007,001069: 04,3204 E3,1501 EBANK= UPSVFLAG
052008,001070: 04,3204 55501 TS UPSVFLAG
052009,001071:
052010,001072: 04,3205 06042 TC INTPRET
052011,001073: 04,3206 77624 INTWAKUP CALL
052012,001074: 04,3207 27417 INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
052013,001075: 04,3210 77776 EXIT
052014,001076:
052015,001077: 04,3211 05364 TC PHASCHNG
052016,001078: 04,3212 04026 OCT 04026
052017,001079: 04,3213 03716 TC UPOUT +1
052018,001080:
052019,001081: 04,3214 00002 UPMNSVCD OCT 2
052020,001082: 04,3215 00000 OCT 0
052021,001083:
052022,001084:
052023,001085: 04,3216 77420 GRP2PC STQ EXIT
052024,001086: 04,3217 02711 GRP2SVQ
052025,001087: 04,3220 05364 TC PHASCHNG
052026,001088: 04,3221 04022 OCT 04022
052027,001089: 04,3222 06042 TC INTPRET
052028,001090: 04,3223 77650 GOTO
052029,001091: 04,3224 02711 GRP2SVQ
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc