Source Code
These source-code files are part of a reconstructed copy of Comanche 72/3 (AKA Manche72 revision 3),
the final, flown mission release of the Apollo Guidance Computer (AGC) Command Module (CM) software
for Apollo 13.
The starting point was the source code of Comanche 72 (itself previously reconstructed). Comanche 72 source code was then modified by incorporating changes known from contemporary documentation to have been made between revisions 72 and 72/3. The resulting code assembles to have identical memory-bank checksums as those specified in NASA drawing 2021153G; this gives reasonably high confidence that the changes that have been made are correct. In places where ambiguity exists, this ambiguity is discussed in "## Reconstruction:" comments. Since no contemporary listings of Comanche 72/3 are available as source material, all comments and labels are approximate. They have been taken from other AGC programs where possible, or, in some places, written from scratch to match what we believe would have been in the original listing. |
054559,000002: ## Copyright: Public domain.
054560,000003: ## Filename: INTEGRATION_INITIALIZATION.agc
054561,000004: ## Purpose: A section of Manche72 revision 3.
054562,000005: ## It is part of the reconstructed source code for the final, flown
054563,000006: ## release of the software for the Command Module's (CM) Apollo
054564,000007: ## Guidance Computer (AGC) for Apollo 13. No original listings
054565,000008: ## of this program are available; instead, this file was recreated
054566,000009: ## from a reconstructed copy of Comanche 072. It has been adapted
054567,000010: ## such that the resulting bugger words exactly match those
054568,000011: ## specified for Manche72 revision 3 in NASA drawing 2021153G,
054569,000012: ## which gives relatively high confidence that the reconstruction
054570,000013: ## is correct.
054571,000014: ## Assembler: yaYUL
054572,000015: ## Contact: Ron Burkey <info@sandroid.org>.
054573,000016: ## Website: www.ibiblio.org/apollo/index.html
054574,000017: ## Mod history: 2024-05-19 MAS Created from Comanche 072.
054575,000018:
054576,000019: # 1.0 INTRODUCTION
054577,000020: # ----------------
054578,000021:
054579,000022: # FROM A USERS POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
054580,000023: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
054581,000024: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
054582,000025: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
054583,000026: # SIDE THE LUNAR SPHERE OF INFLUENCE.
054584,000027:
054585,000028: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
054586,000029: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
054587,000030: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
054588,000031: # CALL TC INTSTALL.
054589,000032:
054590,000033: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
054591,000034: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
054592,000035: # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
054593,000036: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
054594,000037: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
054595,000038:
054596,000039: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
054597,000040: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
054598,000041: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
054599,000042: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
054600,000043:
054601,000044: # 2.0 GENERAL DESCRIPTION
054602,000045: # -----------------------
054603,000046:
054604,000047: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS ---
054605,000048: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
054606,000049: # 2) INTEGRATES THE W-MATRIX
054607,000050: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
054608,000051:
054609,000052: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
054610,000053: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
054611,000054: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
054612,000055: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
054613,000056: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
054614,000057: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
054615,000058: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
054616,000059: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
054617,000060: # AND/OR STATE VECTOR.
054618,000061:
054619,000062: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
054620,000063: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
054621,000064: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
054622,000065:
054623,000066: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS.
054624,000067: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
054625,000068: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
054626,000069:
054627,000070: # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
054628,000071:
054629,000072: # 2.1 RESTARTS
054630,000073:
054631,000074: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
054632,000075: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
054633,000076: # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
054634,000077: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
054635,000078: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
054636,000079: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
054637,000080: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
054638,000081:
054639,000082: # 2.2 SCALING
054640,000083:
054641,000084: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
054642,000085: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTOR DEPENDS ON THE ORIGIN OF THE COORDINATE
054643,000086: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
054644,000087: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
054645,000088: # DIFFERENT SCALING.
054646,000089: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
054647,000090:
054648,000091: # 3.0 INPUT/OUTPUT
054649,000092: # ----------------
054650,000093:
054651,000094: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
054652,000095: # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
054653,000096: # FOR INTEGRVS, THE RCV,VCV,TET OF THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
054654,000097:
054655,000098: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
054656,000099: # EARTH MOON
054657,000100: # 29 27
054658,000101: # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
054659,000102:
054660,000103: # 7 5
054661,000104: # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
054662,000105:
054663,000106: # 28 28
054664,000107: # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
054665,000108: # CUSTOMARILY 0, BUT NOTE LUNAR
054666,000109: # ORBIT DEPENDENCE ON REAL TIME.
054667,000110:
054668,000111: # 22 18
054669,000112: # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
054670,000113: # 0 IF TCCSM(LEM) = 0
054671,000114:
054672,000115: # 3 -1
054673,000116: # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
054674,000117: # 0 IF TCCSM(LEM) = 0
054675,000118: # 29 27
054676,000119: # RCVCSM(LEM) - CONIC POSITION METERS 2 2
054677,000120: # EQUALS RRECTCSM(LEM) IF
054678,000121: # TCCSM(LEM) = 0
054679,000122:
054680,000123: # 7 5
054681,000124: # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
054682,000125: # EQUALS VRECTCSM(LEM) IF
054683,000126: # TCCSM(LEM) = 0
054684,000127:
054685,000128: # 28 28
054686,000129: # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
054687,000130: # CUSTOMARILY 0
054688,000131:
054689,000132: # 1/2 17 16
054690,000133: # XKEPCSM(LEM) - ROOT OF KEPLERS EQUATION M 2 2
054691,000134: # 0 IF TCCSM(LEM) = 0
054692,000135:
054693,000136: # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
054694,000137: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
054695,000138: # LMOONFLG C = CSM, L = LM 0 0
054696,000139: # LMIDFLG 0,1 0,1
054697,000140:
054698,000141: # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
054699,000142:
054700,000143: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
054701,000144: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
054702,000145: # ROUTINE MUST BE PRESET.
054703,000146:
054704,000147: # OUTPUT
054705,000148: # AFTER EVERY CALL TO INTEGRATION
054706,000149: # EARTH MOON
054707,000150: # 29 29
054708,000151: # 0D RATT POSITION METERS 2 2
054709,000152:
054710,000153: # 7 7
054711,000154: # 6D VATT VELOCITY M/CSEC 2 2
054712,000155:
054713,000156: # 28 28
054714,000157: # 12D TAT TIME 2 2
054715,000158:
054716,000159: # 29 27
054717,000160: # 14D RATT1 POSITION METERS 2 2
054718,000161:
054719,000162: # 7 5
054720,000163: # 20D VATT1 VELOCITY M/CSEC 2 2
054721,000164:
054722,000165: # 3 2 36 30
054723,000166: # 26D MU(P) MU M /CS 2 2
054724,000167:
054725,000168: # X1 MUTABLE ENTRY -2 -10D
054726,000169:
054727,000170: # X2 COORDINT
054728,000171: # X2 COORDINATE SYSTEM ORIGEN 0 2
054729,000172: # (THIS, NOT MOONFLAG, SHOULD BE
054730,000173: # USED TO DETERMINE ORIGIN.)
054731,000174:
054732,000175: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
054733,000176: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
054734,000177: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
054735,000178: # CALLING PROGRAM.
054736,000179:
054737,000180: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
054738,000181: # -------------------------------------
054739,000182:
054740,000183: # A) PRECISION ORBITAL INTEGRATION. CSMPREC, LEMPREC ENTRANCES
054741,000184: # L-X STORE TIME TO 95T5791T5 T 95 PUS L9ST (T4531)
054742,000185: # L CALL
054743,000186: # L+1 CSMPREC (OR LEMPREC)
054744,000187: # L+2 RETURN
054745,000188: # INPUT 28
054746,000189: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
054747,000190: # OUTPUT
054748,000191: # THE DATA LISTED IN SECTION 3.0 PLUS
054749,000192: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
054750,000193: # BODY... METERS B-29 ONLY IF MIDFLAG = DIMOFLAG = 1
054751,000194: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
054752,000195: # L-X STORE TIME IN PUSH LIST (TDEC1)
054753,000196: # L CALL
054754,000197: # L+1 CSMCONIC (OR LEMCONIC)
054755,000198: # INPUT/OUTPUT
054756,000199: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
054757,000200: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
054758,000201: # CALL
054759,000202: # INTSTALL
054760,000203: # VLOAD
054761,000204: # POSITION VECTOR
054762,000205: # STOVL RCV
054763,000206: # VELOCITY VECTOR
054764,000207: # STODL VCV
054765,000208: # TIME STATE VECTOR VALID
054766,000209: # STODL TET
054767,000210: # FINAL RADIUS
054768,000211: # STORE RFINAL
054769,000212: # SET(CLEAR) SET(CLEAR)
054770,000213: # INTYPFLAG
054771,000214: # MOONFLAG
054772,000215: # SET(CLEAR) DLOAD
054773,000216: # DESIRED TIME
054774,000217: # STCALL TDEC1
054775,000218: # INTEGRVS
054776,000219: # INPUT
054777,000220: # RCV POSITION VECTOR METERS
054778,000221: # VCV VELOCITY VECTOR M/CSEC
054779,000222: # TET TIME OF STATE VECTOR (MAY = 0) CSEC B-28
054780,000223: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
054781,000224: # (MAY BE INCREMENT IF TET=0)
054782,000225: # OUTPUT
054783,000226: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
054784,000227: # DEPENDING ON INTYPFLG.
054785,000228: # D) INTEGRATE STATE VECTOR. INTGRV ENTRANCE
054786,000229: # L-X STORE TIME IN PUSH LIST (TDEC1) (MAY BE DONE AFTER CALL TO INTSTALL)
054787,000230: # L-8 CALL
054788,000231: # L-7
054789,000232: # L-6 SET(CLEAR) SET(CLEAR)
054790,000233: # L-5 VINTFLAG 1=CSM, 0=LM
054791,000234: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
054792,000235: # L-3 SET(CLEAR) SET(CLEAR)
054793,000236: # L-2 DIMOFLAG 1=W-MATRIX, 0=NO W-MATRIX
054794,000237: # L-1 D6OR9FLG 1=9X9, 0=6X6
054795,000238: # L SET DLOAD
054796,000239: # L+1 STATEFLG DESIRE PERMANENT UPDATE
054797,000240: # L+2 FINAL RAD. OF STATE VECTOR
054798,000241: # L+3 STCALL RFINAL
054799,000242: # L+4 INTEGRV
054800,000243: # L CALL NORMAL USE -- WILL UPDATE STATE
054801,000244: # L+1 INTEGRV VECTOR IF DIMOFLAG=1. (STATEFLG IS
054802,000245: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
054803,000246: # IT IS USED.)
054804,000247: # INPUT
054805,000248: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
054806,000249: # OUTPUT
054807,000250: # SAME AS FOR PRECISION OR CONIC INTEGRATION
054808,000251: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
054809,000252: # THE PERMANENT STATE VECTOR REPRESENTATION.
054810,000253:
054811,000254: 11,2312 BANK 11
054812,000255: 13,2000 SETLOC INTINIT
054813,000256: 13,2000 BANK
054814,000257: 13,2635 E3,1554 EBANK= RRECTCSM
054815,000258: 13,2635 COUNT 13/INTIN
054816,000259:
054817,000260: 13,2635 05426 STATEINT TC PHASCHNG
054818,000261: 13,2636 00052 OCT 00052
054819,000262: 13,2637 35075 CAF PRIO5
054820,000263: 13,2640 05163 TC FINDVAC
054821,000264: 13,2641 E3,1554 EBANK= RRECTCSM
054822,000265: 13,2641 02644 26063 2CADR STATINT1
054823,000266:
054824,000267: 13,2643 05340 TC TASKOVER
054825,000268: 13,2644 06006 STATINT1 TC INTPRET
054826,000269: 13,2645 47014 BON RTB
054827,000270: 13,2646 04712 QUITFLAG
054828,000271: 13,2647 26706 NOINT # NO STATEINT IF V96
054829,000272: 13,2650 45510 LOADTIME
054830,000273: 13,2651 00041 STORE TDEC1
054831,000274: 13,2652 45014 CLEAR CALL
054832,000275: 13,2653 04274 V96ONFLG
054833,000276: 13,2654 27446 INTSTALL
054834,000277: 13,2655 45014 SET CALL
054835,000278: 13,2656 01076 NODOFLAG
054836,000279: 13,2657 26677 SETIFLGS
Reconstruction: The setting of POOFLAG here was added as part of the fix for anomaly COM-21, "Backwards integration can occur in P27 uplink". |
054840,000283: 13,2660 52014 SET GOTO # INHIBIT BACKWARDS INTEGRATION
054841,000284: 13,2661 01466 POOFLAG
054842,000285: 13,2662 26000 STATEUP
054843,000286: 13,2663 00003 25140 600SECS 2DEC 60000 B-28
054844,000287:
054845,000288: 13,2665 77414 ENDINT CLEAR EXIT
054846,000289: 13,2666 01672 STATEFLG
054847,000290: 13,2667 05426 TC PHASCHNG
054848,000291: 13,2670 20032 OCT 20032
054849,000292: 13,2671 00006 EXTEND
054850,000293: 13,2672 32664 DCA 600SECS
054851,000294: 13,2673 05356 TC LONGCALL
054852,000295: 13,2674 E3,1554 EBANK= RRECTHIS
054853,000296: 13,2674 02635 26063 2CADR STATEINT
054854,000297:
054855,000298: 13,2676 05233 TC ENDOFJOB
054856,000299: 13,2677 43014 SETIFLGS SET CLEAR
054857,000300: 13,2700 01472 STATEFLG
054858,000301: 13,2701 01673 INTYPFLG
054859,000302: 13,2702 43014 CLEAR CLEAR
054860,000303: 13,2703 01676 DIM0FLAG
054861,000304: 13,2704 01675 D6OR9FLG
054862,000305: 13,2705 77616 RVQ
054863,000306: 13,2706 77776 NOINT EXIT
054864,000307: 13,2707 05426 TC PHASCHNG
054865,000308: 13,2710 00002 OCT 2
054866,000309:
054867,000310: 13,2711 05574 TC DOWNFLAG
054868,000311: 13,2712 00221 ADRES QUITFLAG
054869,000312:
054870,000313: 13,2713 05233 TC ENDOFJOB
054871,000314:
054872,000315: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
054873,000316:
054874,000317: # CALLING SEQUENCE
054875,000318: # L CALL
054876,000319: # L+1 ATOPCSM
054877,000320:
054878,000321: # NORMAL EXIT AT L+2
054879,000322:
054880,000323: 13,2714 47020 ATOPCSM STQ RTB
054881,000324: 13,2715 00051 S2
054882,000325: 13,2716 26727 MOVEACSM
054883,000326: 13,2717 45014 SET CALL
054884,000327: 13,2720 04063 CMOONFLG
054885,000328: 13,2721 20237 SVDWN1
054886,000329: 13,2722 43014 BON CLRGO
054887,000330: 13,2723 00303 MOONFLAG
054888,000331: 13,2724 00051 S2
054889,000332: 13,2725 04223 CMOONFLG
054890,000333: 13,2726 00051 S2
054891,000334: 13,2727 03073 MOVEACSM TC SETBANK
054892,000335: 13,2730 55500 TS DIFEQCNT # INITIALIZE INDEX
054893,000336: 13,2731 51500 INDEX DIFEQCNT
054894,000337: 13,2732 31502 CA RRECT
054895,000338: 13,2733 51500 INDEX DIFEQCNT
054896,000339: 13,2734 55554 TS RRECTCSM
054897,000340: 13,2735 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
054898,000341: 13,2736 12730 TCF MOVEACSM +1 # NO-LOOP
054899,000342: 13,2737 06030 TC DANZIG # COMPLETE - RETURN
054900,000343:
054901,000344: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
054902,000345:
054903,000346: # CALLING SEQUENCE
054904,000347: # L CALL
054905,000348: # PTOACSM
054906,000349:
054907,000350: # NORMAL EXIT AT L+2
054908,000351:
054909,000352: 13,2740 43034 PTOACSM RTB BON
054910,000353: 13,2741 26756 MOVEPCSM
054911,000354: 13,2742 04303 CMOONFLG
054912,000355: 13,2743 26751 SETMOON
054913,000356: 13,2744 66214 CLRMOON CLEAR SSP
054914,000357: 13,2745 00263 MOONFLAG
054915,000358: 13,2746 02151 PBODY
054916,000359: 13,2747 00000 0
054917,000360: 13,2750 77616 RVQ
054918,000361: 13,2751 66214 SETMOON SET SSP
054919,000362: 13,2752 00063 MOONFLAG
054920,000363: 13,2753 02151 PBODY
054921,000364: 13,2754 00002 2
054922,000365: 13,2755 77616 RVQ
054923,000366: 13,2756 03073 MOVEPCSM TC SETBANK
054924,000367: 13,2757 55500 TS DIFEQCNT
054925,000368: 13,2760 51500 INDEX DIFEQCNT
054926,000369: 13,2761 31554 CA RRECTCSM
054927,000370: 13,2762 51500 INDEX DIFEQCNT
054928,000371: 13,2763 55502 TS RRECT
054929,000372: 13,2764 11500 CCS DIFEQCNT
054930,000373: 13,2765 12757 TCF MOVEPCSM +1
054931,000374: 13,2766 06030 TC DANZIG
054932,000375:
054933,000376: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
054934,000377: 13,2767 47020 ATOPLEM STQ RTB
054935,000378: 13,2770 00051 S2
054936,000379: 13,2771 27002 MOVEALEM
054937,000380: 13,2772 45014 SET CALL
054938,000381: 13,2773 04064 LMOONFLG
054939,000382: 13,2774 20263 SVDWN2
054940,000383: 13,2775 43014 BON CLRGO
054941,000384: 13,2776 00303 MOONFLAG
054942,000385: 13,2777 00051 S2
054943,000386: 13,3000 04224 LMOONFLG
054944,000387: 13,3001 00051 S2
054945,000388: 13,3002 03073 MOVEALEM TC SETBANK
054946,000389: 13,3003 55500 TS DIFEQCNT
054947,000390: 13,3004 51500 INDEX DIFEQCNT
054948,000391: 13,3005 31502 CA RRECT
054949,000392: 13,3006 51500 INDEX DIFEQCNT
054950,000393: 13,3007 55626 TS RRECTLEM
054951,000394: 13,3010 11500 CCS DIFEQCNT
054952,000395: 13,3011 13003 TCF MOVEALEM +1
054953,000396: 13,3012 06030 TC DANZIG
054954,000397:
054955,000398: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
054956,000399:
054957,000400: 13,3013 47014 PTOALEM BON RTB
054958,000401: 13,3014 04307 SURFFLAG
054959,000402: 13,3015 27034 USEPIOS
054960,000403: 13,3016 27023 MOVEPLEM
054961,000404: 13,3017 52014 BON GOTO
054962,000405: 13,3020 04304 LMOONFLG
054963,000406: 13,3021 26751 SETMOON
054964,000407: 13,3022 26744 CLRMOON
054965,000408: 13,3023 03073 MOVEPLEM TC SETBANK
054966,000409: 13,3024 55500 TS DIFEQCNT
054967,000410: 13,3025 51500 INDEX DIFEQCNT
054968,000411: 13,3026 31626 CA RRECTLEM
054969,000412: 13,3027 51500 INDEX DIFEQCNT
054970,000413: 13,3030 55502 TS RRECT
054971,000414: 13,3031 11500 CCS DIFEQCNT
054972,000415: 13,3032 13024 TCF MOVEPLEM +1
054973,000416: 13,3033 06030 TC DANZIG
054974,000417:
054975,000418: 13,3034 77201 USEPIOS SETPD VLOAD
054976,000419: 13,3035 00001 0
054977,000420: 13,3036 02026 RLS
054978,000421: 13,3037 41525 PDDL PUSH
054979,000422: 13,3040 00041 TDEC1
054980,000423: 13,3041 15517 STODL TET
054981,000424: 13,3042 27757 5/8
054982,000425: 13,3043 77624 CALL
054983,000426: 13,3044 55343 RP-TO-R
054984,000427: 13,3045 25535 STOVL RCV
054985,000428: 13,3046 11560 ZUNIT
054986,000429: 13,3047 14001 STODL 0D
054987,000430: 13,3050 01517 TET
054988,000431: 13,3051 14007 STODL 6D
054989,000432: 13,3052 27757 5/8
054990,000433: 13,3053 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT
054991,000434: 13,3054 00063 MOONFLAG
054992,000435: 13,3055 55343 RP-TO-R
054993,000436: 13,3056 74235 VXV VXSC
054994,000437: 13,3057 01535 RCV
054995,000438: 13,3060 27072 OMEGMOON
054996,000439: 13,3061 25543 STOVL VCV
054997,000440: 13,3062 11566 ZEROVEC
054998,000441: 13,3063 01521 STORE TDELTAV
054999,000442: 13,3064 67174 AXT,2 SXA,2
055000,000443: 13,3065 00002 2
055001,000444: 13,3066 02150 PBODY
055002,000445: 13,3067 35527 STCALL TNUV
055003,000446: 13,3070 27205 A-PCHK
055004,000447: 13,3071 07112 06620 OMEGMOON 2DEC* 2.66169947 E-8 B+23*
055005,000448:
055006,000449: 13,3073 33077 SETBANK CAF INTBANK
055007,000450: 13,3074 54006 TS BBANK
055008,000451: 13,3075 33513 CAF FORTYONE
055009,000452: 13,3076 00002 TC Q
055010,000453: 13,3077 E3,1554 EBANK= RRECTCSM
055011,000454: 13,3077 26063 INTBANK BBCON INTEGRV
055012,000455:
055013,000456: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
055014,000457: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
055015,000458:
055016,000459: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
055017,000460: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
055018,000461: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
055019,000462: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
055020,000463: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
055021,000464: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
055022,000465:
055023,000466: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
055024,000467: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
055025,000468: # CSMPREC CSMCONIC LEMPREC LEMCONIC
055026,000469: # VINTFLAG SET SET CLEAR CLEAR
055027,000470: # INTYPFLG CLEAR SET CLEAR SET
055028,000471: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
055029,000472:
055030,000473: # CALLING SEQUENCE
055031,000474: # L-X STORE TDEC1
055032,000475: # L CALL (STCALL TDEC1)
055033,000476: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
055034,000477:
055035,000478: # NORMAL EXIT TO L+2
055036,000479:
055037,000480: # SUBROUTINES CALLED
055038,000481: # INTEGRV1
055039,000482: # PRECOUT FOR CSMPREC AND LEMPREC
055040,000483: # CONICOUT FOR CSMCONIC AND LEMCONIC
055041,000484:
055042,000485: # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
055043,000486:
055044,000487: # INPUT
055045,000488: # TDEC1 TIME TO INTEGRATE TO. CSECS B-28
055046,000489:
055047,000490: 13,3100 45020 CSMPREC STQ CALL
055048,000491: 13,3101 00046 X1
055049,000492: 13,3102 27446 INTSTALL
055050,000493: 13,3103 43130 SXA,1 SET
055051,000494: 13,3104 02214 IRETURN
055052,000495: 13,3105 01474 VINTFLAG
055053,000496:
055054,000497: 13,3106 43014 IFLAGP SET CLEAR
055055,000498: 13,3107 01467 PRECIFLG
055056,000499: 13,3110 01676 DIM0FLAG
055057,000500: 13,3111 77614 CLRGO
055058,000501: 13,3112 01633 INTYPFLG
055059,000502: 13,3113 27173 INTEGRV1
055060,000503: 13,3114 45020 LEMPREC STQ CALL
055061,000504: 13,3115 00046 X1
055062,000505: 13,3116 27446 INTSTALL
055063,000506: 13,3117 43130 SXA,1 CLRGO
055064,000507: 13,3120 02214 IRETURN
055065,000508: 13,3121 01634 VINTFLAG
055066,000509: 13,3122 27106 IFLAGP
055067,000510:
055068,000511: 13,3123 45020 CSMCONIC STQ CALL
055069,000512: 13,3124 00046 X1
055070,000513: 13,3125 27446 INTSTALL
055071,000514: 13,3126 43130 SXA,1 SET
055072,000515: 13,3127 02214 IRETURN
055073,000516: 13,3130 01474 VINTFLAG
055074,000517: 13,3131 43014 IFLAGC CLEAR SETGO
055075,000518: 13,3132 01676 DIM0FLAG
055076,000519: 13,3133 01433 INTYPFLG
055077,000520: 13,3134 27173 INTEGRV1
055078,000521: 13,3135 45020 LEMCONIC STQ CALL
055079,000522: 13,3136 00046 X1
055080,000523: 13,3137 27446 INTSTALL
055081,000524: 13,3140 43130 SXA,1 CLRGO
055082,000525: 13,3141 02214 IRETURN
055083,000526: 13,3142 01634 VINTFLAG
055084,000527: 13,3143 27131 IFLAGC
055085,000528:
055086,000529: 13,3144 66214 INTEGRVS SET SSP
055087,000530: 13,3145 01467 PRECIFLG
055088,000531: 13,3146 02151 PBODY
055089,000532: 13,3147 00000 0
055090,000533: 13,3150 66214 BOF SSP
055091,000534: 13,3151 00343 MOONFLAG
055092,000535: 13,3152 27155 +3
055093,000536: 13,3153 02151 PBODY
055094,000537: 13,3154 00002 2
055095,000538: 13,3155 77220 STQ VLOAD
055096,000539: 13,3156 02214 IRETURN
055097,000540: 13,3157 11566 ZEROVEC
055098,000541: 13,3160 01521 STORE TDELTAV
055099,000542: 13,3161 35527 STCALL TNUV
055100,000543: 13,3162 23403 RECTIFY
055101,000544: 13,3163 43014 CLEAR SET
055102,000545: 13,3164 01676 DIM0FLAG
055103,000546: 13,3165 04062 NEWIFLG
055104,000547: 13,3166 77614 SETGO
055105,000548: 13,3167 04020 RPQFLAG
055106,000549: 13,3170 22312 ALOADED
055107,000550:
055108,000551: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER,
055109,000552: # NORMALLY THE NAVIGATION PROGRAM, TO SET THE INTEG. FLAGS. THE ROUTINE
055110,000553: # IS ENTERED AT INTEGRV1 BY CSMPREC ET. AL. AND AT ALOADED BY INTEGRVS.
055111,000554: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
055112,000555: # PROGRAM FOR PRECISION OR CONIC
055113,000556:
055114,000557: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
055115,000558: # SETTING ANY FLAGS.
055116,000559:
055117,000560: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
055118,000561: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
055119,000562: # INTYPFLG
055120,000563: # DIM0FLAG
055121,000564: # D6OR9FLG
055122,000565:
055123,000566: # CALLING SEQUENCE
055124,000567: # L-X CALL
055125,000568: # L-Y INTSTALL
055126,000569: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
055127,000570: # AND DIM0FLAG IS CLEAR.
055128,000571: # L CALL
055129,000572: # L+1 INTEGRV
055130,000573:
055131,000574: # INITIALIZATION
055132,000575: # FLAGS AS ABOVE
055133,000576: # STORE TIME TO INTEGRATE TO IN TDEC1
055134,000577:
055135,000578: # OUTPUT
055136,000579: # RATT AS
055137,000580: # VATT DEFINED
055138,000581: # TAT BEFORE
055139,000582:
055140,000583: 13,3171 77620 INTEGRV STQ
055141,000584: 13,3172 02214 IRETURN
055142,000585: 13,3173 43014 INTEGRV1 SET SET
055143,000586: 13,3174 04060 RPQFLAG
055144,000587: 13,3175 04062 NEWIFLG
055145,000588: 13,3176 77731 INTEGRV2 SSP
055146,000589: 13,3177 00053 QPRET
055147,000590: 13,3200 22312 ALOADED
055148,000591: 13,3201 52014 BON GOTO
055149,000592: 13,3202 01714 VINTFLAG
055150,000593: 13,3203 26740 PTOACSM
055151,000594: 13,3204 27013 PTOALEM
055152,000595: 11,2000 SETLOC INTINIT1
055153,000596: 11,2000 BANK
055154,000597: 11,2312 77745 ALOADED DLOAD
055155,000598: 11,2313 00041 TDEC1
055156,000599: 11,2314 01101 STORE TDEC
055157,000600: 11,2315 52014 BOFF GOTO
055158,000601: 11,2316 01753 INTYPFLG
055159,000602: 11,2317 27314 TESTLOOP
055160,000603: 11,2320 27300 RVCON
055161,000604: 13,2000 SETLOC INTINIT
055162,000605: 13,2000 BANK
055163,000606: 13,3205 45014 A-PCHK BOF CALL
055164,000607: 13,3206 00342 MIDFLAG
055165,000608: 13,3207 27214 ANDOUT # DONT MAKE ORIGIN CHANGE CHECK
055166,000609: 13,3210 23302 CHKSWTCH
055167,000610: 13,3211 45044 BPL CALL
055168,000611: 13,3212 27214 ANDOUT # NO ORIGIN CHANGE
055169,000612: 13,3213 23343 ORIGCHNG # MAKE THE SWITCH
055170,000613: 13,3214 77414 ANDOUT BOFCLR EXIT
055171,000614: 13,3215 01652 STATEFLG
055172,000615: 13,3216 27235 RECTOUT
055173,000616: 13,3217 05426 TC PHASCHNG
055174,000617: 13,3220 04022 OCT 04022
055175,000618: 13,3221 05562 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
055176,000619: 13,3222 00236 ADRES REINTFLG # INTSTALL AND INTWAKE
055177,000620: 13,3223 06006 TC INTPRET
055178,000621: 13,3224 77731 SSP
055179,000622: 13,3225 00053 QPRET
055180,000623: 13,3226 27233 PHEXIT
055181,000624: 13,3227 52014 BON GOTO
055182,000625: 13,3230 01714 VINTFLAG
055183,000626: 13,3231 26714 ATOPCSM
055184,000627: 13,3232 26767 ATOPLEM
055185,000628: 13,3233 77624 PHEXIT CALL
055186,000629: 13,3234 56751 GRP2PC
055187,000630: 13,3235 45001 RECTOUT SETPD CALL
055188,000631: 13,3236 00001 0
055189,000632: 13,3237 23403 RECTIFY
055190,000633: 13,3240 53775 VLOAD VSL*
055191,000634: 13,3241 01503 RRECT
055192,000635: 13,3242 57576 0,2
055193,000636: 13,3243 53715 PDVL VSL* # RATT TO PD0
055194,000637: 13,3244 01511 VRECT
055195,000638: 13,3245 57576 0,2
055196,000639: 13,3246 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
055197,000640: 13,3247 01517 TET
055198,000641: 13,3250 01503 RRECT
055199,000642: 13,3251 64715 PDVL PDDL*
055200,000643: 13,3252 01511 VRECT
055201,000644: 13,3253 50036 MUEARTH,2
055202,000645: 13,3254 76006 PUSH AXT,1
055203,000646: 13,3255 77765 DEC -10 B-14
055204,000647: 13,3256 76014 BON AXT,1
055205,000648: 13,3257 00303 MOONFLAG
055206,000649: 13,3260 27262 +2
055207,000650: 13,3261 77775 DEC -2 B-14
055208,000651: 13,3262 40001 INTEXIT SETPD BOV
055209,000652: 13,3263 00001 0
055210,000653: 13,3264 27265 +1
055211,000654: 13,3265 77614 CLEAR
055212,000655: 13,3266 04675 MIDAVFLG
055213,000656: 13,3267 43014 CLEAR CLEAR
055214,000657: 13,3270 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
055215,000658: 13,3271 01667 PRECIFLG
055216,000659: 13,3272 77535 SLOAD EXIT
055217,000660: 13,3273 02215 IRETURN
055218,000661: 13,3274 30154 CA MPAC
055219,000662: 13,3275 50120 INDEX FIXLOC
055220,000663: 13,3276 54052 TS QPRET
055221,000664: 13,3277 03463 TC INTWAKE
055222,000665:
055223,000666: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
055224,000667: # VELOCITY FOR THE INTERVAL (TET-TDEC)
055225,000668:
055226,000669: 13,3300 45345 RVCON DLOAD DSU
055227,000670: 13,3301 01101 TDEC
055228,000671: 13,3302 01517 TET
055229,000672: 13,3303 36312 STCALL TAU.
055230,000673: 13,3304 23403 RECTIFY
055231,000674: 13,3305 77624 CALL
055232,000675: 13,3306 22321 KEPPREP
055233,000676: 13,3307 43345 DLOAD DAD
055234,000677: 13,3310 01551 TC
055235,000678: 13,3311 01517 TET
055236,000679: 13,3312 35517 STCALL TET
055237,000680: 13,3313 27235 RECTOUT
055238,000681:
055239,000682: # TESTLOOP
055240,000683:
055241,000684: 13,3314 43014 TESTLOOP BOF CLRGO
055242,000685: 13,3315 04752 QUITFLAG
055243,000686: 13,3316 27321 +3
055244,000687: 13,3317 01632 STATEFLG
055245,000688: 13,3320 27262 INTEXIT # STOP INTEGRATION
055246,000689: 13,3321 73001 +3 SETPD LXA,2
055247,000690: 13,3322 00013 10D
055248,000691: 13,3323 02150 PBODY
055249,000692: 13,3324 51575 VLOAD ABVAL
055250,000693: 13,3325 01535 RCV
055251,000694: 13,3326 43006 PUSH CLEAR # RC TO 10D
055252,000695: 13,3327 00262 MIDFLAG
055253,000696: 13,3330 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP
055254,000697: 13,3331 67212 RME,2
055255,000698: 13,3332 27335 +3
055256,000699: 13,3333 77614 SET
055257,000700: 13,3334 00062 MIDFLAG
055258,000701: 13,3335 41345 NORFINAL DLOAD DMP
055259,000702: 13,3336 00013 10D
055260,000703: 13,3337 00043 34D
055261,000704: 13,3340 55762 SR1R DDV*
055262,000705: 13,3341 50036 MUEARTH,2
055263,000706: 13,3342 41366 SQRT DMP
055264,000707: 13,3343 23734 .3D
055265,000708: 13,3344 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE
055266,000709: 13,3345 54345 DLOAD SL
055267,000710: 13,3346 00155 MPAC
055268,000711: 13,3347 20220 15D # OF 128 CSECS.
055269,000712: 13,3350 40006 PUSH BOV
055270,000713: 13,3351 27376 MAXDT
055271,000714: 13,3352 50021 BDSU BMN
055272,000715: 13,3353 27445 DT/2MAX
055273,000716: 13,3354 27376 MAXDT
055274,000717: 13,3355 45345 DT/2COMP DLOAD DSU
055275,000718: 13,3356 01101 TDEC
055276,000719: 13,3357 01517 TET
055277,000720: 13,3360 54234 RTB SL
055278,000721: 13,3361 45544 SGNAGREE
055279,000722: 13,3362 20211 8D
055280,000723: 13,3363 02314 STORE DT/2 # B-19
055281,000724: 13,3364 51400 BOV ABS
055282,000725: 13,3365 27402 GETMAXDT
055283,000726: 13,3366 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
055284,000727: 13,3367 00015 12D
055285,000728: 13,3370 27406 P00HCHK
055286,000729: 13,3371 75345 USEMAXDT DLOAD SIGN
055287,000730: 13,3372 00015 12D
055288,000731: 13,3373 02314 DT/2
055289,000732: 13,3374 36314 STCALL DT/2
055290,000733: 13,3375 27406 P00HCHK
055291,000734: 13,3376 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
055292,000735: 13,3377 27445 DT/2MAX
055293,000736: 13,3400 77650 GOTO
055294,000737: 13,3401 27355 DT/2COMP
055295,000738: 13,3402 77634 GETMAXDT RTB
055296,000739: 13,3403 45712 SIGNMPAC
055297,000740: 13,3404 36314 STCALL DT/2
055298,000741: 13,3405 27371 USEMAXDT
055299,000742: 13,3406 51545 P00HCHK DLOAD ABS
055300,000743: 13,3407 02314 DT/2
055301,000744: 13,3410 50025 DSU BMN
055302,000745: 13,3411 27443 DT/2MIN
055303,000746: 13,3412 27205 A-PCHK
Reconstruction: Comanche 67 and earlier examine MODREG here instead of checking POOFLAG. The change was made as part of the fix for anomaly COM-21, "Backwards integration can occur in P27 uplink". |
055308,000751: 13,3413 43014 BOFF BON
055309,000752: 13,3414 01746 POOFLAG # IS BACKWARDS INTEGRATION INHIBITED
055310,000753: 13,3415 23222 TIMESTEP # NO
055311,000754: 13,3416 01707 PRECIFLG # WAS THIS CALL VIA CSM(LEM)PREC
055312,000755: 13,3417 23222 TIMESTEP # YES
055313,000756: 13,3420 45345 DLOAD DSU
055314,000757: 13,3421 02314 DT/2
055315,000758: 13,3422 00015 12D
055316,000759: 13,3423 43040 BMN BOFCLR
055317,000760: 13,3424 27205 A-PCHK
055318,000761: 13,3425 04242 NEWIFLG
055319,000762: 13,3426 23222 TIMESTEP
055320,000763: 13,3427 45345 DLOAD DSU
055321,000764: 13,3430 01101 TDEC
055322,000765: 13,3431 01517 TET
055323,000766: 13,3432 77640 BMN # NO BACKWARD INTEGRATION
055324,000767: 13,3433 27262 INTEXIT
055325,000768: 13,3434 40525 PDDL SR4
055326,000769: 13,3435 02314 DT/2 # IS 4(DT) LS (TDEC - TET)
055327,000770: 13,3436 44322 SR2R BDSU # NO
055328,000771: 13,3437 52040 BMN GOTO
055329,000772: 13,3440 27262 INTEXIT
055330,000773: 13,3441 23222 TIMESTEP
055331,000774: 13,3442 00000 01400 DT/2MIN 2DEC 3 B-20
055332,000775:
055333,000776: 13,3444 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
055334,000777:
055335,000778: 13,3446 77776 INTSTALL EXIT
055336,000779: 13,3447 35035 CAF ZERO
055337,000780: 13,3450 54001 ALLSTALL TS L
055338,000781: 13,3451 30106 CA RASFLAG
055339,000782: 13,3452 50001 INDEX L
055340,000783: 13,3453 73544 MASK INTBITAB # IS THIS STALL AREA FREE
055341,000784: 13,3454 00006 EXTEND
055342,000785: 13,3455 13522 BZF OKTOGRAB # YES
055343,000786: 13,3456 50001 INDEX L
055344,000787: 13,3457 33541 CAF WAKESTAL
055345,000788: 13,3460 05211 TC JOBSLEEP
055346,000789: 13,3461 77776 INTWAKE0 EXIT
055347,000790: 13,3462 13503 TCF INTWAKE1
055348,000791:
055349,000792: 13,3463 40106 INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
055350,000793: 13,3464 75025 MASK REINTBIT # RESTARTED
055351,000794: 13,3465 10000 CCS A
055352,000795: 13,3466 03503 TC INTWAKE1 # NO
055353,000796:
055354,000797: 13,3467 50120 INDEX FIXLOC
055355,000798: 13,3470 30052 CA QPRET
055356,000799: 13,3471 55055 TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
055357,000800:
055358,000801: 13,3472 05426 TC PHASCHNG
055359,000802: 13,3473 04022 OCT 04022
055360,000803:
055361,000804: 13,3474 31055 CA TBASE2
055362,000805: 13,3475 50120 INDEX FIXLOC
055363,000806: 13,3476 54052 TS QPRET
055364,000807:
055365,000808: 13,3477 35025 CAF REINTBIT
055366,000809: 13,3500 70106 MASK RASFLAG
055367,000810: 13,3501 00006 EXTEND
055368,000811: 13,3502 13525 BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
055369,000812:
055370,000813: 13,3503 35035 INTWAKE1 CAF ZERO
055371,000814: 13,3504 54154 WAKE TS STALTEM # INDEX OF ANY STALL USER
055372,000815: 13,3505 50154 WAKE1 INDEX STALTEM
055373,000816: 13,3506 33541 CAF WAKESTAL
055374,000817: 13,3507 00004 INHINT
055375,000818: 13,3510 05215 TC JOBWAKE
055376,000819: 13,3511 10064 CCS LOCCTR
055377,000820: 13,3512 13505 TCF WAKE1 # MAY BE MORE TO WAKE UP
055378,000821: 13,3513 00051 FORTYONE DEC 41 B-14
055379,000822: 13,3514 50154 INDEX STALTEM
055380,000823: 13,3515 43544 CS INTBITAB
055381,000824: 13,3516 70106 MASK RASFLAG
055382,000825: 13,3517 54106 TS RASFLAG # RELEASE STALL AREA
055383,000826: 13,3520 00003 RELINT
055384,000827: 13,3521 13525 TCF GOBAC
055385,000828: 13,3522 50001 OKTOGRAB INDEX L # NO, WAIT UNTIL AVAILABLE
055386,000829: 13,3523 35016 CAF INTFLBIT
055387,000830: 13,3524 26106 ADS RASFLAG
055388,000831: 13,3525 06006 GOBAC TC INTPRET
055389,000832: 13,3526 77616 RVQ
055390,000833: 13,3527 77776 ERASTAL1 EXIT
055391,000834: 13,3530 35033 CAF ONE
055392,000835: 13,3531 13450 TCF ALLSTALL
055393,000836: 13,3532 77776 ERASTAL2 EXIT
055394,000837: 13,3533 35032 CAF TWO
055395,000838: 13,3534 13450 TCF ALLSTALL
055396,000839: 13,3535 35033 ERASWAK1 CAF ONE
055397,000840: 13,3536 13504 TCF WAKE
055398,000841: 13,3537 35032 ERASWAK2 CAF TWO
055399,000842: 13,3540 13504 TCF WAKE
055400,000843: 13,3541 27447 WAKESTAL CADR INTSTALL +1
055401,000844: 13,3542 27530 CADR ERASTAL1 +1
055402,000845: 13,3543 27533 CADR ERASTAL2 +1
055403,000846: 13,3544 0154 STALTEM EQUALS MPAC
055404,000847: 13,3544 20100 INTBITAB OCT 20100
055405,000848: 13,3545 10040 OCT 10040
055406,000849: 13,3546 04020 OCT 04020
055407,000850:
055408,000851: # AVETOMID
055409,000852:
055410,000853: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
055411,000854: # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
055412,000855: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
055413,000856:
055414,000857: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLG IS
055415,000858: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
055416,000859:
055417,000860: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
055418,000861:
055419,000862: # FINALLY TRKMKCNT IS ZEROED
055420,000863:
055421,000864: 35,2000 SETLOC INTINIT2
055422,000865: 35,2000 BANK
055423,000866:
055424,000867: 35,3675 COUNT* $$/INTIN
055425,000868: 35,3675 43020 AVETOMID STQ BON
055426,000869: 35,3676 02317 EGRESS
055427,000870: 35,3677 02716 RENDWFLG
055428,000871: 35,3700 73753 INT/W # W-MATRIX VALID, GO INTEGRATE IT
055429,000872: 35,3701 77614 BON
055430,000873: 35,3702 01711 ORBWFLAG
055431,000874: 35,3703 73753 INT/W # W-MATRIX VALID, GO INTEGRATE IT
055432,000875:
055433,000876: 35,3704 45174 SETCOAST AXT,2 CALL # NOW MOVE PROPERLY SCALED RN,VN AND
055434,000877: 35,3705 00002 2 # PIPTIME TO INTEGRATION ERASABLES.
055435,000878: 35,3706 27446 INTSTALL
055436,000879: 35,3707 77014 BON AXT,2
055437,000880: 35,3710 00315 AMOONFLG
055438,000881: 35,3711 73713 +2
055439,000882: 35,3712 00000 0
055440,000883: 35,3713 53775 VLOAD VSR*
055441,000884: 35,3714 01171 RN
055442,000885: 35,3715 57176 0,2
055443,000886: 35,3716 01503 STORE RRECT
055444,000887: 35,3717 15535 STODL RCV
055445,000888: 35,3720 01205 PIPTIME
055446,000889: 35,3721 25517 STOVL TET
055447,000890: 35,3722 01177 VN
055448,000891: 35,3723 45057 VSR* CALL
055449,000892: 35,3724 57176 0,2
055450,000893: 35,3725 23417 MINIRECT # FINISH SETTING UP STATE VECTOR
055451,000894: 35,3726 66234 RTB SSP
055452,000895: 35,3727 26727 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
055453,000896: 35,3730 01127 TRKMKCNT
055454,000897: 35,3731 00000 0
055455,000898: 35,3732 43014 SET BON
055456,000899: 35,3733 04063 CMOONFLG
055457,000900: 35,3734 00315 AMOONFLG
055458,000901: 35,3735 73740 +3
055459,000902: 35,3736 77614 CLEAR
055460,000903: 35,3737 04263 CMOONFLG
055461,000904:
055462,000905: 35,3740 71214 BON DLOAD # NOW DO LM
055463,000906: 35,3741 04307 SURFFLAG
055464,000907: 35,3742 75755 FAZAB5 # NO COASTING LM
055465,000908: 35,3743 01205 PIPTIME
055466,000909: 35,3744 34041 STCALL TDEC1
055467,000910: 35,3745 26677 SETIFLGS
055468,000911: 35,3746 45014 CLEAR CALL
055469,000912: 35,3747 01674 VINTFLAG
055470,000913: 35,3750 27171 INTEGRV
055471,000914: 35,3751 77650 GOTO
055472,000915: 35,3752 02317 EGRESS
055473,000916: 35,3753 45145 INT/W DLOAD CALL
055474,000917: 35,3754 01205 PIPTIME # INTEGRATE W THRU BURN
055475,000918: 35,3755 27446 INTSTALL
055476,000919: 35,3756 43014 SET SET
055477,000920: 35,3757 01476 DIM0FLAG # DO W-MATRIX
055478,000921: 35,3760 04476 AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
055479,000922: 35,3761 43014 CLEAR SET
055480,000923: 35,3762 01675 D6OR9FLG
055481,000924: 35,3763 01474 VINTFLAG
055482,000925: 35,3764 34041 STCALL TDEC1
055483,000926: 35,3765 27171 INTEGRV
055484,000927: 35,3766 77650 GOTO
055485,000928: 35,3767 73704 SETCOAST
055486,000929:
055487,000930: # MIDTOAV1
055488,000931:
055489,000932: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
055490,000933: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
055491,000934: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
055492,000935: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
055493,000936: # IS DONE AS IT IS FOR MIDTOAV2.
055494,000937: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
055495,000938:
055496,000939: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
055497,000940: # TO THE RETURN ADDRESS
055498,000941:
055499,000942: # IN EITHER CASE, BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
055500,000943: # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
055501,000944: # TION TIME AND MPAC IS SET TO THE DELTA TIME---
055502,000945: # TAT MINUS CURRENT TIME.
055503,000946:
055504,000947: # MIDTOAV2
055505,000948:
055506,000949: # THIS ROUTINE INTEGRATES THE CSM STATE VECTOR TO CURRENT TIME PLUS
055507,000950: # INCREMENTS OF TIMEDELT SUCH THAT THE DIFFERENCE BETWEEN CURRENT TIME
055508,000951: # AND THE STATE VECTOR TIME AT THE END OF THE LAST STEP IS AT LEAST 5.6
055509,000952: # SECS.
055510,000953: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
055511,000954: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
055512,000955:
055513,000956: 13,2000 SETLOC INTINIT
055514,000957: 13,2000 BANK
055515,000958: 13,3547 1127 EBANK= IRETURN1
055516,000959: 13,3547 45020 MIDTOAV2 STQ CALL
055517,000960: 13,3550 01127 IRETURN1
055518,000961: 13,3551 27446 INTSTALL
055519,000962: 13,3552 43145 DLOAD CLEAR
055520,000963: 13,3553 27715 TIMEDELT
055521,000964: 13,3554 04674 MID1FLAG
055522,000965: 13,3555 37732 STCALL T-TO-ADD
055523,000966: 13,3556 27573 ENTMID2
055524,000967:
055525,000968: 13,3557 45020 MIDTOAV1 STQ CALL
055526,000969: 13,3560 01127 IRETURN1
055527,000970: 13,3561 27446 INTSTALL
055528,000971: 13,3562 47014 SET RTB
055529,000972: 13,3563 04474 MID1FLAG
055530,000973: 13,3564 45510 LOADTIME
055531,000974: 13,3565 44215 DAD BDSU # INITIAL CHECK, IS TDEC1 IN THE FUTURE.
055532,000975: 13,3566 27715 TIMEDELT
055533,000976: 13,3567 00041 TDEC1
055534,000977: 13,3570 45044 BPL CALL
055535,000978: 13,3571 27577 ENTMID1
055536,000979: 13,3572 27700 NOTIME # NO SET ALARM.SWITCH TO MIDTOAV2
055537,000980:
055538,000981: 13,3573 43234 ENTMID2 RTB DAD
055539,000982: 13,3574 45510 LOADTIME
055540,000983: 13,3575 03732 T-TO-ADD
055541,000984: 13,3576 00041 STORE TDEC1
055542,000985:
055543,000986: 13,3577 45014 ENTMID1 CLEAR CALL
055544,000987: 13,3600 01676 DIM0FLAG # NO W-MATRIX
055545,000988: 13,3601 26034 THISVINT
055546,000989: 13,3602 43014 CLEAR SET
055547,000990: 13,3603 01673 INTYPFLG
055548,000991: 13,3604 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
055549,000992: 13,3605 77624 CALL
055550,000993: 13,3606 27171 INTEGRV # GO INTEGRATE
055551,000994: 13,3607 66134 SXA,2 SXA,1
055552,000995: 13,3610 03746 RTX2
055553,000996: 13,3611 03745 RTX1
055554,000997: 13,3612 67214 CLEAR SLOAD
055555,000998: 13,3613 00275 AMOONFLG
055556,000999: 13,3614 03747 RTX2
055557,001000: 13,3615 43054 BZE SET
055558,001001: 13,3616 27620 +2
055559,001002: 13,3617 00075 AMOONFLG
055560,001003: 13,3620 77775 VLOAD
055561,001004: 13,3621 00001 RATT
055562,001005: 13,3622 25232 STOVL RN1
055563,001006: 13,3623 00007 VATT
055564,001007: 13,3624 15240 STODL VN1
055565,001008: 13,3625 00015 TAT
055566,001009: 13,3626 01246 STORE PIPTIME1
055567,001010: 13,3627 77776 EXIT
055568,001011:
055569,001012: 13,3630 00004 INHINT
055570,001013: 13,3631 00006 EXTEND
055571,001014: 13,3632 40025 DCS TIME2
055572,001015: 13,3633 20155 DAS MPAC
055573,001016: 13,3634 07226 TC TPAGREE
055574,001017:
055575,001018: 13,3635 31127 CA IRETURN1
055576,001019: 13,3636 04720 TC BANKJUMP
055577,001020: 13,3637 47014 CKMID2 BOF RTB
055578,001021: 13,3640 04754 MID1FLAG
055579,001022: 13,3641 27656 MID2
055580,001023: 13,3642 45510 LOADTIME
055581,001024: 13,3643 44215 DAD BDSU
055582,001025: 13,3644 27715 TIMEDELT
055583,001026: 13,3645 01101 TDEC
055584,001027: 13,3646 45044 BPL CALL
055585,001028: 13,3647 27314 TESTLOOP # YES
055586,001029: 13,3650 27700 NOTIME
055587,001030:
055588,001031: 13,3651 43234 TIMEINC RTB DAD
055589,001032: 13,3652 45510 LOADTIME
055590,001033: 13,3653 03732 T-TO-ADD
055591,001034: 13,3654 35101 STCALL TDEC
055592,001035: 13,3655 27314 TESTLOOP
055593,001036:
055594,001037: 13,3656 45345 MID2 DLOAD DSU
055595,001038: 13,3657 01101 TDEC
055596,001039: 13,3660 01517 TET
055597,001040: 13,3661 45246 ABS DSU
055598,001041: 13,3662 27713 3CSECS
055599,001042: 13,3663 77644 BPL
055600,001043: 13,3664 27651 TIMEINC
055601,001044:
055602,001045: 13,3665 44234 RTB BDSU # SEE IF 5.6 SECS. AVAILABLE TO CALLER.
055603,001046: 13,3666 45510 LOADTIME
055604,001047: 13,3667 01517 TET
055605,001048: 13,3670 51025 DSU BPL
055606,001049: 13,3671 27717 5.6SECS
055607,001050: 13,3672 27205 A-PCHK # YES,GET OUT.
055608,001051:
055609,001052: 13,3673 43345 DLOAD DAD # NO,ADD TIMEDELT TO T-TO-ADD AND TRY
055610,001053: 13,3674 03732 T-TO-ADD # AGAIN.
055611,001054: 13,3675 27715 TIMEDELT
055612,001055: 13,3676 37732 STCALL T-TO-ADD
055613,001056: 13,3677 27651 TIMEINC
055614,001057: 13,3700 77414 NOTIME CLEAR EXIT # TOO LATE
055615,001058: 13,3701 04674 MID1FLAG
055616,001059: 13,3702 25127 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
055617,001060: 13,3703 05664 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
055618,001061: 13,3704 01703 OCT 1703 # TIG WILL BE SLIPPED...
055619,001062: 13,3705 06006 TC INTPRET
055620,001063: 13,3706 77745 DLOAD
055621,001064: 13,3707 27715 TIMEDELT
055622,001065: 13,3710 03732 STORE T-TO-ADD
055623,001066: 13,3711 77616 RVQ
055624,001067:
055625,001068: 13,3712 00000 00003 3CSECS 2DEC 3 B-28
055626,001069:
055627,001070: 13,3714 00000 02342 TIMEDELT 2DEC 1250 B-28
055628,001071:
055629,001072: 13,3716 00000 01060 5.6SECS 2DEC 560 B-28
055630,001073:
055631,001074: 27,2672 BANK 27
055632,001075: 27,2000 SETLOC UPDATE2
055633,001076: 27,2000 BANK
055634,001077: 27,2672 0330 EBANK= INTWAKUQ
055635,001078:
055636,001079: 27,2672 COUNT* $$/INTIN
055637,001080:
055638,001081: 27,2672 0330 INTWAKUQ = INTWAK1Q # TEMPORARY UNTIL NAME OF INTWAK1Q IS CHNG
055639,001082:
055640,001083: 27,2672 00003 INTWAKEU RELINT
055641,001084: 27,2673 00006 EXTEND
055642,001085: 27,2674 22330 QXCH INTWAKUQ # SAVE Q FOR RETURN
055643,001086:
055644,001087: 27,2675 06006 TC INTPRET
055645,001088:
055646,001089: 27,2676 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
055647,001090: 27,2677 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
055648,001091: 27,2700 56737 INTWAKUP
055649,001092:
055650,001093: 27,2701 77775 VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
055651,001094: 27,2702 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
055652,001095: 27,2703 25535 STOVL RCV
055653,001096: 27,2704 01511 VRECT # NOW GO TO 'RECTIFY +13D' TO
055654,001097: 27,2705 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
055655,001098: 27,2706 23420 RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
055656,001099: 27,2707 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF 'UPSVFLAG'
055657,001100: 27,2710 01502 UPSVFLAG # TO 'UPDATE MOON STATE VECTOR CODE'
055658,001101: 27,2711 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
055659,001102: 27,2712 16750 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
055660,001103: 27,2713 56720 INTWAKEM # SPHERE OF INFLUENCE.........
055661,001104: 27,2714 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
055662,001105: 27,2715 00000 DEC 0 B-14
055663,001106: 27,2716 00223 MOONFLAG
055664,001107: 27,2717 56723 INTWAKEC
055665,001108: 27,2720 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE.
055666,001109: 27,2721 00002 DEC 2 B-14
055667,001110: 27,2722 00063 MOONFLAG
055668,001111: 27,2723 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
055669,001112: # MOONFLAG SET (OR CLEARED).
055670,001113: 27,2724 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
055671,001114: 27,2725 56733 INTWAKLM # STATE VECTOR UPDATE......
055672,001115: 27,2726 77624 CALL # UPDATE CSM STATE VECTOR
055673,001116: 27,2727 26714 ATOPCSM
055674,001117:
055675,001118: 27,2730 52014 CLEAR GOTO
055676,001119: 27,2731 01671 ORBWFLAG
055677,001120: 27,2732 56735 INTWAKEX
055678,001121:
055679,001122: 27,2733 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
055680,001123: 27,2734 26767 ATOPLEM
055681,001124:
055682,001125: 27,2735 77614 INTWAKEX CLEAR
055683,001126: 27,2736 02676 RENDWFLG
055684,001127:
055685,001128: 27,2737 45131 INTWAKUP SSP CALL # REMOVE :UPDATE STATE VECTOR INDICATOR:
055686,001129: 27,2740 01502 UPSVFLAG
055687,001130: 27,2741 00000 0
055688,001131: 27,2742 27461 INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
055689,001132: 27,2743 77776 EXIT
055690,001133:
055691,001134: 27,2744 05426 TC PHASCHNG
055692,001135: 27,2745 04026 OCT 04026
055693,001136: 27,2746 00330 TC INTWAKUQ
055694,001137:
055695,001138: 27,2747 00002 UPMNSVCD OCT 2
055696,001139: 27,2750 00000 OCT 0
055697,001140:
055698,001141: 27,2751 77420 GRP2PC STQ EXIT
055699,001142: 27,2752 03536 GRP2SVQ
055700,001143: 27,2753 05426 TC PHASCHNG
055701,001144: 27,2754 04022 OCT 04022
055702,001145: 27,2755 06006 TC INTPRET
055703,001146: 27,2756 77650 GOTO
055704,001147: 27,2757 03536 GRP2SVQ
055705,001148:
055706,001149:
055707,001150:
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc