Source Code
![]() |
These source-code files derive from a printout of Luminary 210 (Apollo 15-17
Lunar Module guidance computer program), from the personal library of
original AGC developer Don Eyles, digitally photographed at archive.org,
financially sponsored by Jim Lawton, and transcribed to source code by a
team of volunteers. This colorized, syntax-highlighted form was created
by assembling that transcribed source code. Note that the full page images
are available on the
Virtual AGC project page at archive.org, while reduced-size images
are presented at the VirtualAGC project website. Report or fix any
transcription errors at
the Virtual AGC project code repository. Notations on the program listing read, in part: GAP: ASSEMBLE REVISION 210 OF AGC PROGRAM LUMINARY BY NASA 2021112-161 17:11 MAR. 19,1971Note that the date is the date of the printout, not the date of the program revision. |
051778,000002: ## Copyright: Public domain.
051779,000003: ## Filename: INTEGRATION_INITIALIZATION.agc
051780,000004: ## Purpose: A section of Luminary revision 210.
051781,000005: ## It is part of the source code for the Lunar Module's (LM)
051782,000006: ## Apollo Guidance Computer (AGC) for Apollo 15-17.
051783,000007: ## This file is intended to be a faithful transcription, except
051784,000008: ## that the code format has been changed to conform to the
051785,000009: ## requirements of the yaYUL assembler rather than the
051786,000010: ## original YUL assembler.
051787,000011: ## Reference: pp. 1202-1224
051788,000012: ## Assembler: yaYUL
051789,000013: ## Contact: Ron Burkey <info@sandroid.org>.
051790,000014: ## Website: www.ibiblio.org/apollo/index.html
051791,000015: ## Mod history: 2016-11-17 JL Created from Luminary131 version.
051792,000016: ## 2016-12-1x HG Transcribed
051793,000017: ## 2016-12-26 RSB Comment-text proofed using ProoferComments
051794,000018: ## and corrected errors found.
051795,000019: ## 2017-03-13 RSB Comment-text fixes noted in proofing Luminary 116.
051796,000020: ## 2017-03-15 RSB Comment-text fixes identified in 5-way
051797,000021: ## side-by-side diff of Luminary 69/99/116/131/210.
051798,000022: ## 2017-08-19 MAS Fixed comment errors found transcribing Zerlina 56.
051799,000023:
![]() |
Page 1202 |
051801,000025: # 1.0 INTRODUCTION
051802,000026: # ----------------
051803,000027:
051804,000028: # FROM A USERS POINT OF VIEW, ORBITAL INTEGRATION IS ESSENTIALLY THE SAME AS THE 278 INTEGRATION
051805,000029: # PROGRAM. THE SAME ENTRANCES TO THE PROGRAM WILL BE MAINTAINED, THE SAME STALLING ROUTINE WILL BE USED AND
051806,000030: # OUTPUT WILL STILL BE VIA THE PUSHLIST. THE PRIMARY DIFFERENCES TO A USER INVOLVE THE ADDED CAPABILITY OF
051807,000031: # TERMINATING INTEGRATION AT A SPECIFIC FINAL RADIUS AND THE DIFFERENCE IN STATE VECTOR SCALING INSIDE AND OUT-
051808,000032: # SIDE THE LUNAR SPHERE OF INFLUENCE.
051809,000033:
051810,000034: # IN ORDER TO MAKE THE CSM(LEM)PREC AND CSM(LEM)CONIC ENTRANCES SIMILAR TO FLIGHT 278, THE INTEGRATION PROGRAM
051811,000035: # WILL ITSELF SET THE FINAL RADIUS (RFINAL) TO 0 SO THAT REACHING THE DESIRED TIME ONLY WILL TERMINATE
051812,000036: # INTEGRATION. THE DP REGISTER RFINAL MUST BE SET BY USERS OF INTEGRVS AND INTEGRV, AND MUST BE DONE AFTER THE
051813,000037: # CALL TC INTSTALL.
051814,000038:
051815,000039: # WHEN THE LM IS ON THE LUNAR SURFACE (INDICATED BY LUNAR SURFACE FLAG SET) CALLS TO LEMCONIC, LEMPREC, AND
051816,000040: # INTEGRV WITH VINFLAG = 0 WILL RESULT IN THE USE OF THE PLANETARY INERTIAL ORIENTATION SUBROUTINES TO PROVIDE
051817,000041: # BOTH THE LMS POSITION AND VELOCITY IN THE REFERENCE COORDINATE SYSTEM.
051818,000042: # THE PROGRAM WILL PROVIDE OUTPUT AS IF INTEGRATION WAS USED. THAT IS, THE PUSHLIST WILL BE SET AS NOTED BELOW AND
051819,000043: # THE PERMANENT STATE VECTOR UPDATED WHEN SPECIFIED BY AN INTEGRV CALL.
051820,000044:
051821,000045: # USERS OF INTEGRVS DESIRING INTEGRATION (INTYPFLG = 0) SHOULD NOTE THAT THE OBLATENESS PERTURBATION COMPUTATION
051822,000046: # IN LUNAR ORBIT IS TIME DEPENDENT. THEREFORE, THE USER SHOULD SUPPLY AN INITIAL STATE VECTOR VALID AT SOME REAL
051823,000047: # TIME AND THE DESIRED TIME (TDEC1) ALSO AT SOME REAL TIME. FOR CONIC ,,INTEGRATION,, THE USER MAY STILL USE ZERO
051824,000048: # AS THE INITIAL TIME AND DELTA TIME AS THE DESIRED TIME.
051825,000049:
051826,000050: # 2.0 GENERAL DESCRIPTION
051827,000051: # -----------------------
051828,000052:
051829,000053: # THE INTEGRATION PROGRAM OPERATES AS A CLOSED INTERPRETIVE SUBROUTINE AND PERFORMS THESE FUNCTIONS---
051830,000054: # 1) INTEGRATES (PRECISION OR CONIC) EITHER CSM OR LM STATE VECTOR
051831,000055: # 2) INTEGRATES THE W-MATRIX
051832,000056: # 3) PERMANENT OR TEMPORARY UPDATE OF THE STATE VECTOR
051833,000057:
051834,000058: # THERE ARE SIX ENTRANCES TO THE INTEGRATION PROGRAM. FOUR OF THESE (CSMPREC, LEMPREC, CSMCONIC, LEMCONIC) SET
051835,000059: # ALL THE FLAGS REQUIRED IN THE INTEGRATION PROGRAM ITSELF TO CAUSE THE PRECISION OR CONIC INTEGRATION (KEPLER) OF
051836,000060: # THE LM OR CSM STATE VECTOR, AS THE NAMES SUGGEST. ONE ENTRANCE (INTEGRVS) PERMITS THE CALLING PROGRAM TO
051837,000061: # PROVIDE A STATE VECTOR TO BE INTEGRATED. THE CALLING PROGRAM MUST SET THE FLAGS INDICATING (1) PRECISION OR
051838,000062: # CONIC INTEGRATION, (2) IN OR OUT OF LUNAR SPHERE, (3) MIDCOURSE OR NOT, AND THE INTEGRATION PROGRAM COMPLETES
051839,000063: # THE FLAG SETTING TO BYPASS W-MATRIX INTEGRATION. THE LAST ENTRANCE (INTEGRV, USED IN GENERAL BY THE
051840,000064: # NAVIGATION PROGRAMS) PERMITS THE CALLER TO SET FIVE FLAGS (NOT MOONFLAG OR MIDFLAG) BUT NOT TO INPUT A STATE
051841,000065: # VECTOR. ANY PROGRAM WHICH CALLS INTEGRVS OR INTEGRV MUST CALL INTSTALL BEFORE IT SETS THE INTEGRATION FLAGS
051842,000066: # AND/OR STATE VECTOR.
051843,000067:
051844,000068: # THREE SETS OF 42 REGISTERS AND 2 FLAGS ARE USED FOR THE STATE VECTORS. TWO SETS, WHICH MAY NOT BE OVERLAYED, ARE
051845,000069: # USED FOR THE PERMANENT STATE VECTORS FOR THE CSM AND LM. THE THIRD SET, WHICH MAY BE OVERLAYED WHEN INTEGRATION
051846,000070: # IS NOT BEING DONE, IS USED IN THE COMPUTATIONS.
051847,000071:
051848,000072: # THE PERMANENT STATE VECTORS WILL BE PERIODICALLY UPDATED SO THAT THE VECTORS WILL NOT BE OLDER THAN 4 TIMESTEPS.
051849,000073: # THE PERMANENT STATE VECTORS WILL ALSO BE UPDATED WHENEVER THE W-MATRIX IS INTEGRATED OR WHEN A CALLER OF INTEGRV
051850,000074: # SETS STATEFLG (THE NAVIGATION PROGRAMS P20, P22.)
051851,000075:
![]() |
Page 1203 |
051853,000077: # APPENDIX B OF THE USERS GUIDE LISTS THE STATE VECTOR QUANTITIES.
051854,000078:
051855,000079: # 2.1 RESTARTS
051856,000080:
051857,000081: # PHASE CHANGES WILL BE MADE IN THE INTEGRATION PROGRAM ONLY FOR THE INTEGRV ENTRANCE (I.E., WHEN THE W-MATRIX IS
051858,000082: # INTEGRATED OR PERMANENT STATE VECTOR IS UPDATED.) THE GROUP NUMBER USED WILL BE THAT FOR THE P20-25 PROGRAMS
051859,000083: # (I.E., GROUP2) SINCE THE INTEGRV ENTRANCE WILL ONLY BE USED BY THESE PROGRAMS. IF A RESTART OCCURS DURING AN
051860,000084: # INTEGRATION OF THE STATE VECTOR ONLY, THE RECOVERY WILL BE TO THE LAST PHASE IN THE CALLING PROGRAM. CALLING
051861,000085: # PROGRAMS WHICH USE THE INTEGRV OR INTEGRVS ENTRANCE OF INTEGRATION SHOULD ENSURE THAT IF PHASE CHANGING IS DONE
051862,000086: # THAT IT IS PRIOR TO SETTING THE INTEGRATION INPUTS IN THE PUSHLIST.
051863,000087: # THIS IS BECAUSE THE PUSHLIST IS LOST DURING A RESTART.
051864,000088:
051865,000089: # 2.2 SCALING
051866,000090:
051867,000091: # THE INTEGRATION ROUTINE WILL MAINTAIN THE PERMANENT MEMORY STATE VECTORS IN THE SCALING AND UNITS DEFINED IN
051868,000092: # APPENDIX B OF THE USERS GUIDE. THE SCALING OF THE OUTPUT POSITION VECTORDEPENDS ON THE ORIGIN OF THE COORDINATE
051869,000093: # SYSTEM AT THE DESIRED INTEGRATION TIME. THE COORDINATE SYSTEM TRANSFORMATION WILL BE DONE AUTOMATICALLY ON
051870,000094: # MULTIPLE TIMESTEP ENCKE INTEGRATION ONLY. THUS IT IS POSSIBLE TO HAVE OUTPUT FROM SUCCESSIVE INTEGRATIONS IN
051871,000095: # DIFFERENT SCALING.
051872,000096: # HOWEVER, RATT, VATT WILL ALWAYS BE SCALED THE SAME.
051873,000097:
051874,000098: # 3.0 INPUT/OUTPUT
051875,000099: # ----------------
051876,000100:
051877,000101: # PROGRAM INPUTS ARE THE FLAGS DESCRIBED IN APPENDIX A AND THE PERMANENT STATE VECTOR QUANTITIES DESCRIBED IN AP-
051878,000102: # PENDIX B OF THE USERS GUIDE, PLUS THE DESIRED TIME TO INTEGRATE TO IN TDEC1 (A PUSH LIST LOCATION).
051879,000103: # FOR INTEGRVS, THE RCV,VCV, TET OF THE TEMPORARY STATE VECTOR MUST BE SET, PLUS MOONFLAG AND MIDFLAG
051880,000104:
051881,000105: # FOR SIMULATION THE FOLLOWING QUANTITIES MUST BE PRESET ---
051882,000106: # EARTH MOON
051883,000107: # 29 27
051884,000108: # RRECTCSM(LEM) - RECTIFIED POSITION VECTOR METERS 2 2
051885,000109:
051886,000110: # 7 5
051887,000111: # VRECTCSM(LEM) - RECTIFIED VELOCITY VECTOR M/CSEC 2 2
051888,000112:
051889,000113: # 28 28
051890,000114: # TETCSM(LEM) - TIME STATE VECTOR IS VALID CSEC 2 2
051891,000115: # CUSTOMARILY 0, BUT NOTE LUNAR
051892,000116: # ORBIT DEPENDENCE ON REAL TIME.
051893,000117:
051894,000118: # 22 18
051895,000119: # DELTAVCSM(LEM) - POSITION DEVIATION METERS 2 2
051896,000120: # 0 IF TCCSM(LEM) = 0
051897,000121:
051898,000122: # 3 -1
051899,000123: # NUVCSM(LEM) - VELOCITY DEVIATION M/CSEC 2 2
051900,000124: # 0 IF TCCSM(LEM) = 0
051901,000125:
![]() |
Page 1204 |
051903,000127: # 29 27
051904,000128: # RCVCSM(LEM) - CONIC POSITION METERS 2 2
051905,000129: # EQUALS RRECTCSM(LEM) IF
051906,000130: # TCCSM(LEM) = 0
051907,000131:
051908,000132: # 7 5
051909,000133: # VCVCSM(LEM) - CONIC VELOCITY M/CSEC 2 2
051910,000134: # EQUALS VRECTCSM(LEM) IF
051911,000135: # TCCSM(LEM) = 0
051912,000136:
051913,000137: # 28 28
051914,000138: # TCCSM(LEM) - TIME SINCE RECTIFICATION CSECS 2 2
051915,000139: # CUSTOMARILY 0
051916,000140:
051917,000141: # 1/2 17 16
051918,000142: # XKEPCSM(LEM) - ROOT OF KEPLERS EQUATION M 2 2
051919,000143: # 0 IF TCCSM(LEM) = 0
051920,000144:
051921,000145: # CMOONFLG - PERMANENT FLAGS CORRESPONDING 0 0
051922,000146: # CMIDFLAG TO MOONFLAG AND MIDFLAG 0,1 0,1
051923,000147: # LMOONFLG C = CSM, L = LM 0 0
051924,000148: # LMIDFLG 0,1 0,1
051925,000149:
051926,000150: # SURFFLAG - LUNAR SURFACE FLAG 0,1 0,1
051927,000151:
051928,000152: # IN ADDITION, IF (L)CMIDFLAG IS SET, THE INITIAL INPUT VALUES FOR LUNAR
051929,000153: # SOLAR EPHEMERIDES SUBROUTINE AND PLANETARY INERTIAL ORIENTATION SUB-
051930,000154: # ROUTINE MUST BE PRESET.
051931,000155:
051932,000156: # OUTPUT
051933,000157: # AFTER EVERY CALL TO INTEGRATION
051934,000158: # EARTH MOON
051935,000159: # 29 29
051936,000160: # 0D RATT POSITION METERS 2 2
051937,000161: # 7 7
051938,000162: # 6D VATT VELOCITY M/CSEC 2 2
051939,000163: # 28 28
051940,000164: # 12D TAT TIME 2 2
051941,000165: # 29 27
051942,000166: # 14D RATT1 POSITION METERS 2 2
051943,000167: # 7 5
051944,000168: # 20D VATT1 VELOCITY M/CSEC 2 2
051945,000169: # 3 2 36 30
051946,000170: # 26D MU(P) MU M /CS 2 2
051947,000171:
051948,000172: # X1 MUTABLE ENTRY -2 -10D
051949,000173:
051950,000174: # X2 COORDINT
051951,000175: # X2 COORDINATE SYSTEM ORIGEN 0 2
051952,000176: # (THIS, NOT MOONFLAG, SHOULD BE
051953,000177:
![]() |
Page 1205 |
051955,000179: # USED TO DETERMINE ORIGIN.)
051956,000180:
051957,000181: # IN ADDITION TO THE ABOVE, THE PERMANENT STATE VECTOR IS UPDATED WHENEVER
051958,000182: # STATEFLG WAS SET AND WHENEVER A W-MATRIX IS TO BE INTEGRATED. THE PUSH
051959,000183: # COUNTER IS SET TO 0 AND OVERFLOW IS CLEARED BEFORE RETURNING TO THE
051960,000184: # CALLING PROGRAM.
051961,000185:
051962,000186: # 4.0 CALLING SEQUENCES AND SAMPLE CODE
051963,000187: # -------------------------------------
051964,000188:
051965,000189: # A) PRECISION ORBITAL INTEGRATION. CSMPREC,LEMPREC ENTRANCES
051966,000190: # L-X STORE TIME TO 95T5791T5 T 95 PUS L9ST (T4531)
051967,000191: # L CALL
051968,000192: # L+1 CSMPREC (OR LEMPREC)
051969,000193: # L+2 RETURN
051970,000194: # INPUT 28
051971,000195: # TDEC1 (PD 32D) TIME TO INTEGRATE TO...CENTISECONDS SCALED 2
051972,000196: # OUTPUT
051973,000197: # THE DATA LISTED IN SECTION 3.0 PLUS
051974,000198: # RQVV POSITION VECTOR OF VEHICLE WITH RESPECT TO SECONDARY
051975,000199: # BODY... METERS B-29 ONLY IF MIDFLAG = DIMOFLAG = 1
051976,000200: # B) CONIC INTEGRATION. CSMCONIC, LEMCONIC ENTRANCES
051977,000201: # L-X STORE TIME IN PUSH LIST (TDEC1)
051978,000202: # L CALL
051979,000203: # L+1 CSMCONIC (OR LEMCONIC)
051980,000204: # INPUT/OUTPUT
051981,000205: # SAME AS PRECISION INTEGRATION, EXCEPT RQVV NOT SET
051982,000206: # C) INTEGRATE GIVEN STATE VECTOR. INTEGRVS ENTRANCE
051983,000207: # CALL
051984,000208: # INTSTALL
051985,000209: # VLOAD
051986,000210: # POSITION VECTOR
051987,000211: # STOVL RCV
051988,000212: # VELOCITY VECTOR
051989,000213: # STODL VCV
051990,000214: # TIME STATE VECTOR VALID
051991,000215: # STODL TET
051992,000216: # FINAL RADIUS
051993,000217: # STORE RFINAL
051994,000218: # SET(CLEAR) SET(CLEAR)
051995,000219: # INTYPFLAG
051996,000220: # MOONFLAG
051997,000221: # SET(CLEAR) DLOAD
051998,000222: # DESIRED TIME
051999,000223: # STCALL TDEC1
052000,000224: # INTEGRVS
052001,000225: # INPUT
052002,000226: # RCV POSITION VECTOR METERS
052003,000227: # VCV VELOCITY VECTOR M/CSEC
052004,000228: # TET TIME OF STATE VECTOR(MAY = 0) CSEC B-28
052005,000229:
![]() |
Page 1206 |
052007,000231: # TDEC1 TIME TO INTEGRATE TO CSEC B-28 (PD 32D)
052008,000232: # (MAY BE INCREMENT IF TET=0)
052009,000233: # OUTPUT
052010,000234: # SAME AS FOR PRECISION OR CONIC INTEGRATION,
052011,000235: # DEPENDING ON INTYPFLG.
052012,000236: # D) INTEGRATE STATE VECTOR.INTGRV ENTRANCE
052013,000237: # L-X STORE TIME IN PUSH LIST (TDEC1)(MAY BE DONE AFTER CALL TO INTSTALL)
052014,000238: # L-8 CALL
052015,000239: # L-7
052016,000240: # L-6 SET(CLEAR) SET(CLEAR)
052017,000241: # L-5 VINTFLAG 1=CSM, 0=LM
052018,000242: # L-4 INTYPFLAG 1=CONIC, 0=PRECISION
052019,000243: # L-3 SET(CLEAR) SET(CLEAR)
052020,000244: # L-2 DIMOFLAG 1=W-MATRIX, 0=NO W-MATRIX
052021,000245: # L-1 D6OR9FLG 1=9X9, 0=6X6
052022,000246: # L SET DLOAD
052023,000247: # L+1 STATEFLG DESIRE PERMANENT UPDATE
052024,000248: # L+2 FINAL RAD. OF STATE VECTOR
052025,000249: # L+3 STCALL RFINAL
052026,000250: # L+4 INTEGRV
052027,000251: # L CALL NORMAL USE -- WILL UPDATE STATE
052028,000252: # L+1 INTEGRV VECTOR IF DIMOFLAG=1.(STATEFLG IS
052029,000253: # L+2 RETURN ALWAYS RESET IN INTEGRATION AFTER
052030,000254: # IT IS USED.)
052031,000255: # INPUT
052032,000256: # TDEC1 (PD 32D) TIME TO INTEGRATE TO CSEC B-28
052033,000257: # OUTPUT
052034,000258: # SAME AS FOR PRECISION OR CONIC INTEGRATION
052035,000259: # THE PROGRAM WILL SET MOONFLAG, MIDFLAG DEPENDING ON
052036,000260: # THE PERMANENT STATE VECTOR REPRESENTATION.
052037,000261:
052038,000262: 11,2403 BANK 11
052039,000263: 13,2000 SETLOC INTINIT
052040,000264: 13,2000 BANK
052041,000265: 13,2641 E3,1554 EBANK= RRECTCSM
052042,000266: 13,2641 COUNT* $$/INTIN
052043,000267: 13,2641 05355 STATEINT TC PHASCHNG
052044,000268: 13,2642 00052 OCT 00052
052045,000269: 13,2643 35010 CAF PRIO5
052046,000270: 13,2644 05076 TC FINDVAC
052047,000271: 13,2645 E3,1554 EBANK= RRECTCSM
052048,000272: 13,2645 02650 26063 2CADR STATINT1
052049,000273: 13,2647 05263 TC TASKOVER
052050,000274: 13,2650 06060 STATINT1 TC INTPRET
052051,000275: 13,2651 47014 BON RTB
052052,000276: 13,2652 04712 QUITFLAG # KILL INTEGRATION UNTIL NEXT POO.
052053,000277: 13,2653 26711 NOINT
052054,000278: 13,2654 21603 LOADTIME
052055,000279: 13,2655 00041 STORE TDEC1
052056,000280:
![]() |
Page 1207 |
052058,000282: 13,2656 77624 CALL
052059,000283: 13,2657 27447 INTSTALL
052060,000284: 13,2660 45014 SET CALL
052061,000285: 13,2661 01076 NODOFLAG
052062,000286: 13,2662 26702 SETIFLGS
052063,000287: 13,2663 52014 SET GOTO
052064,000288: 13,2664 01460 POOHFLAG
052065,000289: 13,2665 26026 STATEUP
052066,000290: 13,2666 00003 25140 600SECS 2DEC 60000 B-28
052067,000291:
052068,000292: 13,2670 77414 ENDINT CLEAR EXIT
052069,000293: 13,2671 01672 STATEFLG
052070,000294: 13,2672 05355 TC PHASCHNG
052071,000295: 13,2673 20032 OCT 20032
052072,000296: 13,2674 00006 EXTEND
052073,000297: 13,2675 32667 DCA 600SECS
052074,000298: 13,2676 05301 TC LONGCALL
052075,000299: 13,2677 E3,1626 EBANK= RRECTHIS
052076,000300: 13,2677 02641 26063 2CADR STATEINT
052077,000301: 13,2701 05146 TC ENDOFJOB
052078,000302: 13,2702 43014 SETIFLGS SET CLEAR
052079,000303: 13,2703 01472 STATEFLG
052080,000304: 13,2704 01673 INTYPFLG
052081,000305: 13,2705 43014 CLEAR CLEAR
052082,000306: 13,2706 01676 DIM0FLAG
052083,000307: 13,2707 01675 D6OR9FLG
052084,000308: 13,2710 77616 RVQ
052085,000309: 13,2711 77776 NOINT EXIT
052086,000310: 13,2712 05355 TC PHASCHNG
052087,000311: 13,2713 00002 OCT 00002
052088,000312:
052089,000313: 13,2714 05520 TC DOWNFLAG
052090,000314: 13,2715 00221 ADRES QUITFLAG
052091,000315: 13,2716 05146 TC ENDOFJOB
052092,000316:
052093,000317: # ATOPCSM TRANSFERS RRECT TO RRECT +41 TO RRECTCSM TO RRECTCSM +41
052094,000318:
052095,000319: # CALLING SEQUENCE
052096,000320: # L CALL
052097,000321: # L+1 ATOPCSM
052098,000322:
052099,000323: # NORMAL EXIT AT L+2
052100,000324:
052101,000325: 13,2717 47020 ATOPCSM STQ RTB
052102,000326: 13,2720 00051 S2
052103,000327: 13,2721 26732 MOVEACSM
052104,000328: 13,2722 45014 SET CALL
052105,000329: 13,2723 04063 CMOONFLG
052106,000330: 13,2724 26114 SVDWN1
052107,000331:
![]() |
Page 1208 |
052109,000333: 13,2725 43014 BON CLRGO
052110,000334: 13,2726 00303 MOONFLAG
052111,000335: 13,2727 00051 S2
052112,000336: 13,2730 04223 CMOONFLG
052113,000337: 13,2731 00051 S2
052114,000338: 13,2732 03074 MOVEACSM TC SETBANK
052115,000339: 13,2733 55500 TS DIFEQCNT # INITIALIZE INDEX
052116,000340: 13,2734 51500 INDEX DIFEQCNT
052117,000341: 13,2735 31502 CA RRECT
052118,000342: 13,2736 51500 INDEX DIFEQCNT
052119,000343: 13,2737 55554 TS RRECTCSM
052120,000344: 13,2740 11500 CCS DIFEQCNT # IS TRANSFER COMPLETE
052121,000345: 13,2741 12733 TCF MOVEACSM +1 # NO-LOOP
052122,000346: 13,2742 06102 TC DANZIG # COMPLETE- RETURN
052123,000347:
052124,000348:
052125,000349: # PTOACSM TRANSFERS RRECTCSM TO RRECTCSM +41 TO RRECT TO RRECT +41
052126,000350:
052127,000351: # CALLING SEQUENCE
052128,000352: # L CALL
052129,000353: # PTOACSM
052130,000354:
052131,000355: # NORMAL EXIT AT L+2
052132,000356:
052133,000357: 13,2743 43034 PTOACSM RTB BON
052134,000358: 13,2744 26761 MOVEPCSM
052135,000359: 13,2745 04303 CMOONFLG
052136,000360: 13,2746 26754 SETMOON
052137,000361: 13,2747 66214 CLRMOON CLEAR SSP
052138,000362: 13,2750 00263 MOONFLAG
052139,000363: 13,2751 02031 PBODY
052140,000364: 13,2752 00000 0
052141,000365: 13,2753 77616 RVQ
052142,000366: 13,2754 66214 SETMOON SET SSP
052143,000367: 13,2755 00063 MOONFLAG
052144,000368: 13,2756 02031 PBODY
052145,000369: 13,2757 00002 2
052146,000370: 13,2760 77616 RVQ
052147,000371: 13,2761 03074 MOVEPCSM TC SETBANK
052148,000372: 13,2762 55500 TS DIFEQCNT
052149,000373: 13,2763 51500 INDEX DIFEQCNT
052150,000374: 13,2764 31554 CA RRECTCSM
052151,000375: 13,2765 51500 INDEX DIFEQCNT
052152,000376: 13,2766 55502 TS RRECT
052153,000377: 13,2767 11500 CCS DIFEQCNT
052154,000378: 13,2770 12762 TCF MOVEPCSM +1
052155,000379: 13,2771 06102 TC DANZIG
052156,000380:
052157,000381:
052158,000382: # ATOPLEM TRANSFERS RRECT TO RRECT +41 TO RRECTLEM TO RRECTLEM +41
052159,000383:
![]() |
Page 1209 |
052161,000385: 13,2772 47020 ATOPLEM STQ RTB
052162,000386: 13,2773 00051 S2
052163,000387: 13,2774 27005 MOVEALEM
052164,000388: 13,2775 45014 SET CALL
052165,000389: 13,2776 04064 LMOONFLG
052166,000390: 13,2777 26070 SVDWN2
052167,000391: 13,3000 43014 BON CLRGO
052168,000392: 13,3001 00303 MOONFLAG
052169,000393: 13,3002 00051 S2
052170,000394: 13,3003 04224 LMOONFLG
052171,000395: 13,3004 00051 S2
052172,000396: 13,3005 03074 MOVEALEM TC SETBANK
052173,000397: 13,3006 55500 TS DIFEQCNT
052174,000398: 13,3007 51500 INDEX DIFEQCNT
052175,000399: 13,3010 31502 CA RRECT
052176,000400: 13,3011 51500 INDEX DIFEQCNT
052177,000401: 13,3012 55626 TS RRECTLEM
052178,000402: 13,3013 11500 CCS DIFEQCNT
052179,000403: 13,3014 13006 TCF MOVEALEM +1
052180,000404: 13,3015 06102 TC DANZIG
052181,000405:
052182,000406:
052183,000407: # PTOALEM TRANSFERS RRECTLEM TO RRECTLEM +41 TO RRECT TO RRECT +41
052184,000408:
052185,000409: 13,3016 47014 PTOALEM BON RTB
052186,000410: 13,3017 04307 SURFFLAG
052187,000411: 13,3020 27037 USEPIOS
052188,000412: 13,3021 27026 MOVEPLEM
052189,000413: 13,3022 52014 BON GOTO
052190,000414: 13,3023 04304 LMOONFLG
052191,000415: 13,3024 26754 SETMOON
052192,000416: 13,3025 26747 CLRMOON
052193,000417: 13,3026 03074 MOVEPLEM TC SETBANK
052194,000418: 13,3027 55500 TS DIFEQCNT
052195,000419: 13,3030 51500 INDEX DIFEQCNT
052196,000420: 13,3031 31626 CA RRECTLEM
052197,000421: 13,3032 51500 INDEX DIFEQCNT
052198,000422: 13,3033 55502 TS RRECT
052199,000423: 13,3034 11500 CCS DIFEQCNT
052200,000424: 13,3035 13027 TCF MOVEPLEM +1
052201,000425: 13,3036 06102 TC DANZIG
052202,000426:
052203,000427:
052204,000428: 13,3037 77201 USEPIOS SETPD VLOAD
052205,000429: 13,3040 00001 0
052206,000430: 13,3041 02021 RLS
052207,000431: 13,3042 41525 PDDL PUSH
052208,000432: 13,3043 00041 TDEC1
052209,000433: 13,3044 15517 STODL TET
052210,000434: 13,3045 27762 5/8
052211,000435:
![]() |
Page 1210 |
052213,000437: 13,3046 77624 CALL
052214,000438: 13,3047 55716 RP-TO-R
052215,000439: 13,3050 25535 STOVL RCV
052216,000440: 13,3051 24001 ZUNIT
052217,000441: 13,3052 14001 STODL 0D
052218,000442: 13,3053 01517 TET
052219,000443: 13,3054 14007 STODL 6D
052220,000444: 13,3055 27762 5/8
052221,000445: 13,3056 45014 SET CALL # NEEDED FOR SETTING X1 ON EXIT
052222,000446: 13,3057 00063 MOONFLAG
052223,000447: 13,3060 55716 RP-TO-R
052224,000448: 13,3061 74235 VXV VXSC
052225,000449: 13,3062 01535 RCV
052226,000450: 13,3063 26001 OMEGMOON
052227,000451: 13,3064 25543 STOVL VCV
052228,000452: 13,3065 24007 ZEROVEC
052229,000453: 13,3066 01521 STORE TDELTAV
052230,000454: 13,3067 67174 AXT,2 SXA,2
052231,000455: 13,3070 00002 2
052232,000456: 13,3071 02030 PBODY
052233,000457: 13,3072 35527 STCALL TNUV
052234,000458: 13,3073 27215 A-PCHK
052235,000459: 13,3074 33100 SETBANK CAF INTBANK
052236,000460: 13,3075 54006 TS BBANK
052237,000461: 13,3076 33505 CAF FORTYONE
052238,000462: 13,3077 00002 TC Q
052239,000463: 13,3100 E3,1554 EBANK= RRECTCSM
052240,000464: 13,3100 26063 INTBANK BBCON INTEGRV
052241,000465:
052242,000466:
052243,000467: # SPECIAL PURPOSE ENTRIES TO ORBITAL INTEGRATION. THESE ROUTINES PROVIDE ENTRANCES TO INTEGRATION WITH
052244,000468: # APPROPRIATE SWITCHES SET OR CLEARED FOR THE DESIRED INTEGRATION.
052245,000469:
052246,000470: # CSMPREC AND LEMPREC PERFORM ORBIT INTEGRATION BY THE ENCKE METHOD TO THE TIME INDICATED IN TDEC1
052247,000471: # ACCELERATIONS DUE TO OBLATENESS ARE INCLUDED. NO W-MATRIX INT. IS DONE.
052248,000472: # THE PERMANENT STATE VECTOR IS NOT UPDATED.
052249,000473: # CSMCONIC AND LEMCONIC PERFORM ORBIT INTEG. BY KEPLERS METHOD TO THE TIME INDICATED IN TDEC1
052250,000474: # NO DISTURBING ACCELERATIONS ARE INCLUDED. IN THE PROGRAM FLOW THE GIVEN
052251,000475: # STATE VECTOR IS RECTIFIED BEFORE SOLUTION OF KEPLERS EQUATION
052252,000476:
052253,000477: # THE ROUTINES ASSUME THAT THE CSM (LEM) STATE VECTOR IN P-MEM IS VALID.
052254,000478: # SWITCHES SET PRIOR TO ENTRY TO THE MAIN INTEG. PROG ARE AS FOLLOWS
052255,000479: # CSMPREC CSMCONIC LEMPREC LEMCONIC
052256,000480: # VINTFLAG SET SET CLEAR CLEAR
052257,000481: # INTYPFLG CLEAR SET CLEAR SET
052258,000482: # DIM0FLAG CLEAR CLEAR CLEAR CLEAR
052259,000483:
052260,000484:
052261,000485: # CALLING SEQUENCE
052262,000486: # L-X STORE TDEC1
052263,000487:
![]() |
Page 1211 |
052265,000489: # L CALL (STCALL TDEC1)
052266,000490: # L+1 CSMPREC (CSMCONIC, LEMPREC, LEMCONIC)
052267,000491:
052268,000492: # NORMAL EXIT TO L+2
052269,000493:
052270,000494:
052271,000495: # SUBROUTINES CALLED
052272,000496: # INTEGRV1
052273,000497: # PRECOUT FOR CSMPREC AND LEMPREC
052274,000498: # CONICOUT FOR CSMCONIC AND LEMCONIC
052275,000499:
052276,000500:
052277,000501: # OUTPUT - SEE PAGE 2 OF THIS LOG SECTION
052278,000502: # INPUT
052279,000503: # TDEC1 TIME TO INTEGRATE TO . CSECS B-28
052280,000504: 13,3101 45020 CSMPREC STQ CALL
052281,000505: 13,3102 00046 X1
052282,000506: 13,3103 27447 INTSTALL
052283,000507: 13,3104 43130 SXA,1 SET
052284,000508: 13,3105 02101 IRETURN
052285,000509: 13,3106 01474 VINTFLAG
052286,000510:
052287,000511: 13,3107 43014 IFLAGP SET CLEAR
052288,000512: 13,3110 01467 PRECIFLG
052289,000513: 13,3111 01676 DIM0FLAG
052290,000514: 13,3112 77614 CLRGO
052291,000515: 13,3113 01633 INTYPFLG
052292,000516: 13,3114 27174 INTEGRV1
052293,000517: 13,3115 45020 LEMPREC STQ CALL
052294,000518: 13,3116 00046 X1
052295,000519: 13,3117 27447 INTSTALL
052296,000520: 13,3120 43130 SXA,1 CLRGO
052297,000521: 13,3121 02101 IRETURN
052298,000522: 13,3122 01634 VINTFLAG
052299,000523: 13,3123 27107 IFLAGP
052300,000524:
052301,000525: 13,3124 45020 CSMCONIC STQ CALL
052302,000526: 13,3125 00046 X1
052303,000527: 13,3126 27447 INTSTALL
052304,000528: 13,3127 43130 SXA,1 SET
052305,000529: 13,3130 02101 IRETURN
052306,000530: 13,3131 01474 VINTFLAG
052307,000531: 13,3132 43014 IFLAGC CLEAR SETGO
052308,000532: 13,3133 01676 DIM0FLAG
052309,000533: 13,3134 01433 INTYPFLG
052310,000534: 13,3135 27174 INTEGRV1
052311,000535: 13,3136 45020 LEMCONIC STQ CALL
052312,000536: 13,3137 00046 X1
052313,000537: 13,3140 27447 INTSTALL
052314,000538: 13,3141 43130 SXA,1 CLRGO
052315,000539:
![]() |
Page 1212 |
052317,000541: 13,3142 02101 IRETURN
052318,000542: 13,3143 01634 VINTFLAG
052319,000543: 13,3144 27132 IFLAGC
052320,000544:
052321,000545: 13,3145 66214 INTEGRVS SET SSP
052322,000546: 13,3146 01467 PRECIFLG
052323,000547: 13,3147 02031 PBODY
052324,000548: 13,3150 00000 0
052325,000549: 13,3151 66214 BOF SSP
052326,000550: 13,3152 00343 MOONFLAG
052327,000551: 13,3153 27156 +3
052328,000552: 13,3154 02031 PBODY
052329,000553: 13,3155 00002 2
052330,000554: 13,3156 77220 STQ VLOAD
052331,000555: 13,3157 02101 IRETURN
052332,000556: 13,3160 24007 ZEROVEC
052333,000557: 13,3161 01521 STORE TDELTAV
052334,000558: 13,3162 35527 STCALL TNUV
052335,000559: 13,3163 27720 RECTIFY
052336,000560: 13,3164 43014 CLEAR SET
052337,000561: 13,3165 01676 DIM0FLAG
052338,000562: 13,3166 04062 NEWIFLG
052339,000563: 13,3167 77614 SETGO
052340,000564: 13,3170 04020 RPQFLAG
052341,000565: 13,3171 27206 ALOADED
052342,000566: # INTEGRV IS AN ENTRY TO ORBIT INTEGRATION WHICH PERMITS THE CALLER ,
052343,000567: # NORMALLY THE NAVIGATION PROGRAM ,TO SET THE INTEG. FLAGS. THE ROUTINE
052344,000568: # IS ENTERED AT INTEGRV1 BY CSMPREC ET.AL. AND AT ALOADED BY INTEGRVS.
052345,000569: # THE ROUTINE SETS UP A-MEMORY IF ENTERED AT INTEGRV,1 AND SETS THE INTEG.
052346,000570: # PROGRAM FOR PRECISION OR CONIC
052347,000571:
052348,000572: # THE CALLER MUST FIRST CALL INTSTALL TO CHECK IF INTEG. IS IN USE BEFORE
052349,000573: # SETTING ANY FLAGS.
052350,000574: # THE FLAGS WHICH SHOULD BE SET OR CLEARED ARE
052351,000575: # VINTFLAG (IGNORED WHEN ENTERED FROM INTEGRVS)
052352,000576: # INTYPFLG
052353,000577: # DIM0FLAG
052354,000578: # D6OR9FLG
052355,000579: # CALLING SEQUENCE
052356,000580: # L-X CALL
052357,000581: # L-Y INTSTALL
052358,000582: # L-1 SET OR CLEAR ALL FOUR FLAGS. ALSO CAN SET STATEFLG IF DESIRED
052359,000583: # AND DIM0FLAG IS CLEAR.
052360,000584: # L CALL
052361,000585: # L+1 INTEGRV
052362,000586: # INITIALIZATION
052363,000587: # FLAGS AS ABOVE
052364,000588: # STORE TIME TO INTEGRATE TO IN TDEC1
052365,000589: # OUTPUT
052366,000590: # RATT AS
052367,000591:
![]() |
Page 1213 |
052369,000593: # VATT DEFINED
052370,000594: # TAT BEFORE
052371,000595:
052372,000596:
052373,000597: 13,3172 77620 INTEGRV STQ
052374,000598: 13,3173 02101 IRETURN
052375,000599: 13,3174 43014 INTEGRV1 SET SET
052376,000600: 13,3175 04060 RPQFLAG
052377,000601: 13,3176 04062 NEWIFLG
052378,000602: 13,3177 77731 INTEGRV2 SSP
052379,000603: 13,3200 00053 QPRET
052380,000604: 13,3201 27206 ALOADED
052381,000605: 13,3202 52014 BON GOTO
052382,000606: 13,3203 01714 VINTFLAG
052383,000607: 13,3204 26743 PTOACSM
052384,000608: 13,3205 27016 PTOALEM
052385,000609: 13,3206 77745 ALOADED DLOAD
052386,000610: 13,3207 00041 TDEC1
052387,000611: 13,3210 01115 STORE TDEC
052388,000612: 13,3211 52014 BOFF GOTO
052389,000613: 13,3212 01753 INTYPFLG
052390,000614: 13,3213 27315 TESTLOOP
052391,000615: 13,3214 27301 RVCON
052392,000616: 13,3215 77414 A-PCHK BOF EXIT
052393,000617: 13,3216 01752 STATEFLG
052394,000618: 13,3217 27236 RECTOUT
052395,000619: 13,3220 05355 TC PHASCHNG
052396,000620: 13,3221 04022 OCT 04022
052397,000621: 13,3222 05506 TC UPFLAG # PHASE CHANGE HAS OCCURRED BETWEEN
052398,000622: 13,3223 00236 ADRES REINTFLG # INTSTALL AND INTWAKE
052399,000623: 13,3224 06060 TC INTPRET
052400,000624: 13,3225 77731 SSP
052401,000625: 13,3226 00053 QPRET
052402,000626: 13,3227 27234 PHEXIT
052403,000627: 13,3230 52014 BON GOTO
052404,000628: 13,3231 01714 VINTFLAG
052405,000629: 13,3232 26717 ATOPCSM
052406,000630: 13,3233 26772 ATOPLEM
052407,000631: 13,3234 77624 PHEXIT CALL
052408,000632: 13,3235 51770 GRP2PC
052409,000633: 13,3236 45001 RECTOUT SETPD CALL
052410,000634: 13,3237 00001 0
052411,000635: 13,3240 27720 RECTIFY
052412,000636: 13,3241 53775 VLOAD VSL*
052413,000637: 13,3242 01503 RRECT
052414,000638: 13,3243 57576 0,2
052415,000639: 13,3244 53715 PDVL VSL* # RATT TO PD0
052416,000640: 13,3245 01511 VRECT
052417,000641: 13,3246 57576 0,2
052418,000642: 13,3247 63325 PDDL PDVL # VATT TO PD6 TAT TO PD12
052419,000643:
![]() |
Page 1214 |
052421,000645: 13,3250 01517 TET
052422,000646: 13,3251 01503 RRECT
052423,000647: 13,3252 64715 PDVL PDDL*
052424,000648: 13,3253 01511 VRECT
052425,000649: 13,3254 51770 MUEARTH,2
052426,000650: 13,3255 76006 PUSH AXT,1
052427,000651: 13,3256 77765 DEC -10 B-14
052428,000652: 13,3257 76014 BON AXT,1
052429,000653: 13,3260 00303 MOONFLAG
052430,000654: 13,3261 27263 +2
052431,000655: 13,3262 77775 DEC -2 B-14
052432,000656: 13,3263 40001 INTEXIT SETPD BOV
052433,000657: 13,3264 00001 0
052434,000658: 13,3265 27266 +1
052435,000659: 13,3266 43014 CLEAR CLEAR
052436,000660: 13,3267 04676 AVEMIDSW # ALLOW UPDATE OF DOWNLINK STATE VECTOR
052437,000661: 13,3270 01667 PRECIFLG
052438,000662: 13,3271 77614 CLEAR
052439,000663: 13,3272 01672 STATEFLG
052440,000664: 13,3273 77535 SLOAD EXIT
052441,000665: 13,3274 02102 IRETURN
052442,000666: 13,3275 30154 CA MPAC
052443,000667: 13,3276 50120 INDEX FIXLOC
052444,000668: 13,3277 54052 TS QPRET
052445,000669: 13,3300 03460 TC INTWAKE
052446,000670: # RVCON SETS UP ORBIT INTEGRATION TO DO A CONIC SOLUTION FOR POSITION AND
052447,000671: # VELOCITY FOR THE INTERVAL (TET-TDEC)
052448,000672:
052449,000673: 13,3301 45345 RVCON DLOAD DSU
052450,000674: 13,3302 01115 TDEC
052451,000675: 13,3303 01517 TET
052452,000676: 13,3304 36074 STCALL TAU.
052453,000677: 13,3305 27720 RECTIFY
052454,000678: 13,3306 77624 CALL
052455,000679: 13,3307 22403 KEPPREP
052456,000680: 13,3310 43345 DLOAD DAD
052457,000681: 13,3311 01551 TC
052458,000682: 13,3312 01517 TET
052459,000683: 13,3313 35517 STCALL TET
052460,000684: 13,3314 27236 RECTOUT
052461,000685:
![]() |
Page 1215 |
052463,000687: # TESTLOOP
052464,000688:
052465,000689: 13,3315 43014 TESTLOOP BOF CLRGO
052466,000690: 13,3316 04752 QUITFLAG
052467,000691: 13,3317 27322 +3
052468,000692: 13,3320 01632 STATEFLG
052469,000693: 13,3321 27263 INTEXIT # STOP INTEGRATION
052470,000694: 13,3322 73001 +3 SETPD LXA,2
052471,000695: 13,3323 00013 10D
052472,000696: 13,3324 02030 PBODY
052473,000697: 13,3325 51575 VLOAD ABVAL
052474,000698: 13,3326 01535 RCV
052475,000699: 13,3327 43006 PUSH CLEAR # RC TO 10D
052476,000700: 13,3330 00262 MIDFLAG
052477,000701: 13,3331 50023 DSU* BMN # MIDFLAG=0 IF R G.T. RMP
052478,000702: 13,3332 53755 RME,2
052479,000703: 13,3333 27336 +3
052480,000704: 13,3334 77614 SET
052481,000705: 13,3335 00062 MIDFLAG
052482,000706: 13,3336 41345 NORFINAL DLOAD DMP
052483,000707: 13,3337 00013 10D
052484,000708: 13,3340 00043 34D
052485,000709: 13,3341 55762 SR1R DDV*
052486,000710: 13,3342 51770 MUEARTH,2
052487,000711: 13,3343 41366 SQRT DMP
052488,000712: 13,3344 25762 .3D
052489,000713: 13,3345 40442 SR3 SR4 # DT IS TRUNCATED TO A MULTIPLE
052490,000714: 13,3346 54345 DLOAD SL
052491,000715: 13,3347 00155 MPAC
052492,000716: 13,3350 20220 15D # OF 128 CSECS.
052493,000717: 13,3351 40006 PUSH BOV
052494,000718: 13,3352 27377 MAXDT
052495,000719: 13,3353 50021 BDSU BMN
052496,000720: 13,3354 27446 DT/2MAX
052497,000721: 13,3355 27377 MAXDT
052498,000722: 13,3356 45345 DT/2COMP DLOAD DSU
052499,000723: 13,3357 01115 TDEC
052500,000724: 13,3360 01517 TET
052501,000725: 13,3361 54234 RTB SL
052502,000726: 13,3362 21622 SGNAGREE
052503,000727: 13,3363 20211 8D
052504,000728: 13,3364 02076 STORE DT/2 # B-19
052505,000729: 13,3365 51400 BOV ABS
052506,000730: 13,3366 27403 GETMAXDT
052507,000731: 13,3367 50025 DSU BMN # IS TIME TO INTEG. TO GR THAN MAXTIME
052508,000732: 13,3370 00015 12D
052509,000733: 13,3371 27407 P00HCHK
052510,000734: 13,3372 75345 USEMAXDT DLOAD SIGN
052511,000735: 13,3373 00015 12D
052512,000736: 13,3374 02076 DT/2
052513,000737:
![]() |
Page 1216 |
052515,000739: 13,3375 36076 STCALL DT/2
052516,000740: 13,3376 27407 P00HCHK
052517,000741: 13,3377 65345 MAXDT DLOAD PDDL # EXCHANGE DT/2MAX WITH COMPUTED MAX.
052518,000742: 13,3400 27446 DT/2MAX
052519,000743: 13,3401 77650 GOTO
052520,000744: 13,3402 27356 DT/2COMP
052521,000745: 13,3403 77634 GETMAXDT RTB
052522,000746: 13,3404 31765 SIGNMPAC
052523,000747: 13,3405 36076 STCALL DT/2
052524,000748: 13,3406 27372 USEMAXDT
052525,000749: 13,3407 51545 P00HCHK DLOAD ABS
052526,000750: 13,3410 02076 DT/2
052527,000751: 13,3411 50025 DSU BMN
052528,000752: 13,3412 27444 DT/2MIN
052529,000753: 13,3413 27215 A-PCHK
052530,000754: 13,3414 43014 BOFF BON # NO BACKWARDS INTEGRATION
052531,000755: 13,3415 01740 POOHFLAG # WHEN IN POO
052532,000756: 13,3416 23307 TIMESTEP
052533,000757: 13,3417 01707 PRECIFLG
052534,000758: 13,3420 23307 TIMESTEP
052535,000759: 13,3421 45345 DLOAD DSU
052536,000760: 13,3422 02076 DT/2
052537,000761: 13,3423 00015 12D
052538,000762: 13,3424 43040 BMN BOFCLR
052539,000763: 13,3425 27215 A-PCHK
052540,000764: 13,3426 04242 NEWIFLG
052541,000765: 13,3427 23307 TIMESTEP
052542,000766: 13,3430 45345 DLOAD DSU
052543,000767: 13,3431 01115 TDEC
052544,000768: 13,3432 01517 TET
052545,000769: 13,3433 77640 BMN # NO BACKWARD INTEGRATION
052546,000770: 13,3434 27263 INTEXIT
052547,000771: 13,3435 40525 PDDL SR4
052548,000772: 13,3436 02076 DT/2 # IS 4(DT) LS(TDEC - TET)
052549,000773: 13,3437 44322 SR2R BDSU # NO
052550,000774: 13,3440 52040 BMN GOTO
052551,000775: 13,3441 27263 INTEXIT
052552,000776: 13,3442 23307 TIMESTEP
052553,000777: 13,3443 00000 01400 DT/2MIN 2DEC 3 B-20
052554,000778: 13,3445 14152 00000 DT/2MAX 2DEC 4000 E2 B-20
052555,000779:
052556,000780: 13,3447 77776 INTSTALL EXIT
052557,000781: 13,3450 30106 CA RASFLAG
052558,000782: 13,3451 73521 MASK INTBITAB # IS THIS STALL AREA FREE
052559,000783: 13,3452 00006 EXTEND
052560,000784: 13,3453 13513 BZF OKTOGRAB # YES
052561,000785: 13,3454 33520 CAF WAKESTAL
052562,000786: 13,3455 05124 TC JOBSLEEP
052563,000787: 13,3456 77776 INTWAKE0 EXIT
052564,000788:
![]() |
Page 1217 |
052566,000790: 13,3457 13500 TCF INTWAKE1
052567,000791:
052568,000792: 13,3460 40106 INTWAKE CS RASFLAG # IS THIS INTSTALLED ROUTINE TO BE
052569,000793: 13,3461 74736 MASK REINTBIT # RESTARTED
052570,000794: 13,3462 10000 CCS A
052571,000795: 13,3463 03500 TC INTWAKE1 # NO
052572,000796:
052573,000797: 13,3464 50120 INDEX FIXLOC
052574,000798: 13,3465 30052 CA QPRET
052575,000799: 13,3466 55054 TS TBASE2 # YES, DONT RESTART WITH SOMEONE ELSES Q
052576,000800:
052577,000801: 13,3467 05355 TC PHASCHNG
052578,000802: 13,3470 04022 OCT 04022
052579,000803:
052580,000804: 13,3471 31054 CA TBASE2
052581,000805: 13,3472 50120 INDEX FIXLOC
052582,000806: 13,3473 54052 TS QPRET
052583,000807:
052584,000808: 13,3474 34736 CAF REINTBIT
052585,000809: 13,3475 70106 MASK RASFLAG
052586,000810: 13,3476 00006 EXTEND
052587,000811: 13,3477 13516 BZF GOBAC # DONT INTWAKE IF WE CAME HERE VIA RESTART
052588,000812:
052589,000813: 13,3500 33520 INTWAKE1 CAF WAKESTAL
052590,000814: 13,3501 00004 INHINT
052591,000815: 13,3502 05130 TC JOBWAKE
052592,000816: 13,3503 10064 CCS LOCCTR
052593,000817: 13,3504 13500 TCF INTWAKE1
052594,000818: 13,3505 00051 FORTYONE DEC 41 B-14
052595,000819: 13,3506 43521 CS INTBITAB
052596,000820: 13,3507 70106 MASK RASFLAG
052597,000821: 13,3510 54106 TS RASFLAG # RELEASE STALL AREA
052598,000822: 13,3511 00003 RELINT
052599,000823: 13,3512 13516 TCF GOBAC
052600,000824: 13,3513 34727 OKTOGRAB CAF INTFLBIT
052601,000825: 13,3514 00004 INHINT
052602,000826: 13,3515 26106 ADS RASFLAG
052603,000827: 13,3516 06060 GOBAC TC INTPRET
052604,000828: 13,3517 77616 RVQ
052605,000829: 13,3520 27450 WAKESTAL CADR INTSTALL +1
052606,000830: 13,3521 20100 INTBITAB OCT 20100
052607,000831:
![]() |
Page 1218 |
052609,000833: # AVETOMID
052610,000834:
052611,000835: # THIS ROUTINE PERFORMS THE TRANSITION FROM A THRUSTING PHASE TO THE COAST
052612,000836: # PHASE BY INITIALIZING THIS VEHICLES PERMANENT STATE VECTOR WITH THE
052613,000837: # VALUES LEFT BY THE AVERAGEG ROUTINE IN RN,VN,PIPTIME.
052614,000838:
052615,000839: # BEFORE THIS IS DONE THE W-MATRIX, IF ITS VALID (ORWFLAG OR RENDWFLG IS
052616,000840: # SET) IS INTEGRATED FORWARD TO PIPTIME WITH THE PRE-THRUST STATE VECTOR.
052617,000841:
052618,000842: # IN ADDITION, THE OTHER VEHICLE IS INTEGRATED (PERMANENT) TO PIPTIME.
052619,000843:
052620,000844: # FINALLY TRKMKCNT IS ZEROED
052621,000845:
052622,000846:
052623,000847: 13,2000 SETLOC INTINIT
052624,000848: 13,2000 BANK
052625,000849:
052626,000850: 13,3522 COUNT* $$/INTIN
052627,000851: 13,3522 43020 AVETOMID STQ BON
052628,000852: 13,3523 02767 EGRESS
052629,000853: 13,3524 02716 RENDWFLG
052630,000854: 13,3525 27571 INT/W # W-MATRIX VALID ,GO INTEGRATE IT
052631,000855: 13,3526 77614 BON
052632,000856: 13,3527 01711 ORBWFLAG
052633,000857: 13,3530 27571 INT/W # W-MATRIX VALID ,GO INTEGRATE IT
052634,000858:
052635,000859: 13,3531 45145 OTHERS DLOAD CALL # GET SET FOR OTHER VEHICLE INTEGRATION
052636,000860: 13,3532 01234 PIPTIME # DESIRED TIME
052637,000861: 13,3533 27447 INTSTALL
052638,000862: 13,3534 45014 SET CALL
052639,000863: 13,3535 01474 VINTFLAG # CM
052640,000864: 13,3536 26702 SETIFLGS # SETS UP NONE W-MAT. PERMANENT INTEG.
052641,000865: 13,3537 34041 STCALL TDEC1
052642,000866: 13,3540 27172 INTEGRV
052643,000867:
052644,000868: 13,3541 45174 AXT,2 CALL # NOW MOVE PROPERLY SCALE RN,UN AS WELL AS
052645,000869: 13,3542 00002 2 # PIPTIME TO INTEGRATION ERASABLES.
052646,000870: 13,3543 27447 INTSTALL
052647,000871: 13,3544 77014 BON AXT,2
052648,000872: 13,3545 04304 MOONTHIS
052649,000873: 13,3546 27550 +2
052650,000874: 13,3547 00000 0
052651,000875: 13,3550 53775 VLOAD VSR*
052652,000876: 13,3551 01220 RN
052653,000877: 13,3552 57176 0,2
052654,000878: 13,3553 01503 STORE RRECT
052655,000879: 13,3554 15535 STODL RCV
052656,000880: 13,3555 01234 PIPTIME
052657,000881: 13,3556 25517 STOVL TET
052658,000882: 13,3557 01226 VN
052659,000883:
![]() |
Page 1219 |
052661,000885: 13,3560 45057 VSR* CALL
052662,000886: 13,3561 57176 0,2
052663,000887: 13,3562 27734 MINIRECT # FINISH SETTING UP STATE VECTOR
052664,000888: 13,3563 66234 RTB SSP
052665,000889: 13,3564 27005 MOVATHIS # PUT TEMP STATE VECTOR INTO PERMANENT
052666,000890: 13,3565 03463 TRKMKCNT
052667,000891: 13,3566 00000 0
052668,000892: 13,3567 77650 GOTO
052669,000893: 13,3570 47211 FAZAB5
052670,000894:
052671,000895: 13,3571 45145 INT/W DLOAD CALL
052672,000896: 13,3572 01234 PIPTIME # INTEGRATE W THRU BURN
052673,000897: 13,3573 27447 INTSTALL
052674,000898: 13,3574 43014 SET SET
052675,000899: 13,3575 01476 DIM0FLAG # DO W-MATRIX
052676,000900: 13,3576 04476 AVEMIDSW # SO WONT CLOBBER RN,VN,PIPTIME
052677,000901: 13,3577 43014 SET CLEAR
052678,000902: 13,3600 01475 D6OR9FLG # 9X9 FOR LM
052679,000903: 13,3601 01674 VINTFLAG # LM
052680,000904: 13,3602 34041 STCALL TDEC1
052681,000905: 13,3603 27172 INTEGRV
052682,000906: 13,3604 77650 GOTO
052683,000907: 13,3605 27531 OTHERS # NOW GO DO THE OTHER VEHICLE
052684,000908:
![]() |
Page 1220 |
052686,000910: # MIDTOAV1
052687,000911:
052688,000912: # THIS ROUTINE INTEGRATES (PRECISION) TO THE TIME SPECIFIED IN TDEC1.
052689,000913: # IF, AT THE END OF AN INTEGRATION TIME STEP, CURRENT TIME PLUS A DELTA
052690,000914: # TIME (SEE TIMEDELT.....BASED ON THE COMPUTATUON TIME FOR ONE TIME STEP)
052691,000915: # IS GREATER THAN THE DESIRED TIME, ALARM 1703 IS SET AND THE INTEGRATION
052692,000916: # IS DONE TO THE CURRENT TIME.
052693,000917: # RETURN IS IN BASIC TO THE RETURN ADDRESS PLUS ONE.
052694,000918:
052695,000919: # IF THE INTEGRATION IS FINISHED TO THE DESIRED TIME, RETURN IS IN BASIC
052696,000920: # TO THE RETURN ADDRESS
052697,000921:
052698,000922: # IN EITHER CASE , BEFORE RETURNING, THE EXTRAPOLATED STATE VECTOR IS TRAN
052699,000923: # FERRED FROM R,VATT TO R,VN1-PIPTIME1 IS SET TO THE FINISHING INTEGRA-
052700,000924: # TION TIME AND MPAC IS SET TO THE DELTA TIME---
052701,000925: # TAT MINUS CURRENT TIME.
052702,000926:
052703,000927:
052704,000928: # MIDTOAV2
052705,000929:
052706,000930: # THIS ROUTINE INTEGRATES THIS VEHICLES STATE VECTOR TO THE CURRENT TIME.
052707,000931: # NO INPUTS ARE REQUIRED OF THE CALLER. RETURN IS IN BASIC TO THE RETURN
052708,000932: # ADDRESS WITH THE ABOVE TRANSFERS TO R,VN1-PIPTIME1-AND MPAC DONE
052709,000933:
052710,000934: 21,2000 SETLOC ORBITAL5
052711,000935: 21,2000 BANK
052712,000936: 21,2760 COUNT* $$/INTIN
052713,000937:
052714,000938: 21,2760 E7,1744 EBANK= IRETURN1
052715,000939: 21,2760 43020 MIDTOAV2 STQ CLRGO # INTEGRATE TO PRESENT TIME PLUS TIMEDELT
052716,000940: 21,2761 03744 IRETURN1
052717,000941: 21,2762 04634 MID1FLAG
052718,000942: 21,2763 27621 ENTMID2
052719,000943:
052720,000944: 13,2000 SETLOC INTINIT
052721,000945: 13,2000 BANK
052722,000946: 13,3606 COUNT* $$/INTIN
052723,000947:
052724,000948: 13,3606 43020 MIDTOAV1 STQ SET # INTEGRATE TO TDEC1
052725,000949: 13,3607 03744 IRETURN1
052726,000950: 13,3610 04474 MID1FLAG
052727,000951: 13,3611 43234 RTB DAD # INITIAL CHECK , IS TDEC1 IN THE FUTURE
052728,000952: 13,3612 21603 LOADTIME
052729,000953: 13,3613 11171 TIMEDELT
052730,000954: 13,3614 51021 BDSU BPL
052731,000955: 13,3615 00041 TDEC1
052732,000956: 13,3616 27625 ENTMID1 # Y5S
052733,000957: 13,3617 77624 CALL
052734,000958: 13,3620 27711 NOTIME # NO, SET ALARM, SWITCH TO MIDTOAV2
052735,000959:
![]() |
Page 1221 |
052737,000961:
052738,000962: 13,3621 43234 ENTMID2 RTB DAD
052739,000963: 13,3622 21603 LOADTIME
052740,000964: 13,3623 11171 TIMEDELT
052741,000965: 13,3624 00041 STORE TDEC1
052742,000966:
052743,000967: 13,3625 77624 ENTMID1 CALL
052744,000968: 13,3626 27447 INTSTALL
052745,000969: 13,3627 45014 CLEAR CALL
052746,000970: 13,3630 01676 DIM0FLAG # NO W-MATRIX
052747,000971: 13,3631 26066 THISVINT
052748,000972: 13,3632 43014 CLEAR SET
052749,000973: 13,3633 01673 INTYPFLG
052750,000974: 13,3634 04475 MIDAVFLG # LET INTEG. KNOW THE CALL IS FOR MIDTOAV.
052751,000975: 13,3635 77624 CALL
052752,000976: 13,3636 27172 INTEGRV # GO INTEGRATE
052753,000977: 13,3637 77214 CLEAR VLOAD
052754,000978: 13,3640 04675 MIDAVFLG
052755,000979: 13,3641 00001 RATT
052756,000980: 13,3642 27545 STOVL RN1
052757,000981: 13,3643 00007 VATT
052758,000982: 13,3644 17553 STODL VN1
052759,000983: 13,3645 00015 TAT
052760,000984: 13,3646 03561 STORE PIPTIME1
052761,000985: 13,3647 66134 SXA,2 SXA,1
052762,000986: 13,3650 02777 RTX2
052763,000987: 13,3651 02776 RTX1
052764,000988: 13,3652 77776 EXIT
052765,000989:
052766,000990: 13,3653 00004 INHINT
052767,000991: 13,3654 00006 EXTEND
052768,000992: 13,3655 40025 DCS TIME2
052769,000993: 13,3656 20155 DAS MPAC
052770,000994: 13,3657 07300 TC TPAGREE
052771,000995:
052772,000996: 13,3660 31744 CA IRETURN1
052773,000997: 13,3661 04631 TC BANKJUMP
052774,000998: 13,3662 47014 CKMID2 BOF RTB
052775,000999: 13,3663 04754 MID1FLAG
052776,001000: 13,3664 27701 MID2
052777,001001: 13,3665 21603 LOADTIME
052778,001002: 13,3666 44215 DAD BDSU
052779,001003: 13,3667 11171 TIMEDELT
052780,001004: 13,3670 01115 TDEC
052781,001005: 13,3671 45044 BPL CALL
052782,001006: 13,3672 27315 TESTLOOP # YES
052783,001007: 13,3673 27711 NOTIME
052784,001008:
052785,001009: 13,3674 43234 TIMEINC RTB DAD
052786,001010: 13,3675 21603 LOADTIME
052787,001011: 13,3676 11171 TIMEDELT
052788,001012:
![]() |
Page 1222 |
052790,001014: 13,3677 35115 STCALL TDEC
052791,001015: 13,3700 27315 TESTLOOP
052792,001016:
052793,001017: 13,3701 45345 MID2 DLOAD DSU
052794,001018: 13,3702 01115 TDEC
052795,001019: 13,3703 01517 TET
052796,001020: 13,3704 45246 ABS DSU
052797,001021: 13,3705 11167 3CSECS
052798,001022: 13,3706 52040 BMN GOTO
052799,001023: 13,3707 27215 A-PCHK
052800,001024: 13,3710 27674 TIMEINC
052801,001025:
052802,001026: 13,3711 77414 NOTIME CLEAR EXIT # TOO LATE
052803,001027: 13,3712 04674 MID1FLAG
052804,001028: 13,3713 25744 INCR IRETURN1 # SET ERROR EXIT (CALLOC +2)
052805,001029: 13,3714 05571 TC ALARM # INSUFFICIENT TIME FOR INTEGRATION --
052806,001030: 13,3715 01703 OCT 1703 # TIG WILL BE SLIPPED...
052807,001031: 13,3716 06060 TC INTPRET
052808,001032: 13,3717 77616 RVQ
052809,001033:
052810,001034: 04,2000 SETLOC UPDATE2
052811,001035: 04,2000 BANK
052812,001036: 04,3166 COUNT* $$/INTIN
052813,001037:
052814,001038: 04,3166 00000 00003 3CSECS 2DEC 3 B-28
052815,001039: 04,3170 00000 03720 TIMEDELT 2DEC 2000 B-28
052816,001040:
052817,001041: 04,3172 E3,1706 EBANK= TEPHEM
052818,001042: 04,3172 COUNT* $$/INTIN
052819,001043:
052820,001044: 04,3172 06060 INTWAKEU TC INTPRET
052821,001045:
052822,001046: 04,3173 53135 SLOAD BZE # IS THIS A CSM/LEM STATE VECTOR UPDATE
052823,001047: 04,3174 01502 UPSVFLAG # REQUEST. IF NOT GO TO INTWAKUP.
052824,001048: 04,3175 11241 INTWAKUP
052825,001049:
052826,001050: 04,3176 77775 VLOAD # MOVE RRECT(6) AND VRECT(6) INTO
052827,001051: 04,3177 01503 RRECT # RCV(6) AND VCV(6) RESPECTIVELY.
052828,001052: 04,3200 25535 STOVL RCV
052829,001053: 04,3201 01511 VRECT # NOW GO TO 'RECTIFY +13D' TO
052830,001054: 04,3202 77624 CALL # STORE VRECT INTO VCV AND ZERO OUT
052831,001055: 04,3203 27735 RECTIFY +13D # TDELTAV(6),TNUV(6),TC(2) AND XKEP(2)
052832,001056: 04,3204 51535 SLOAD ABS # COMPARE ABSOLUTE VALUE OF 'UPSVFLAG'
052833,001057: 04,3205 01502 UPSVFLAG # TO 'UPDATE MOON STATE VECTOR CODE'
052834,001058: 04,3206 53025 DSU BZE # TO DETERMINE WHETHER THE STATE VECTOR TO
052835,001059: 04,3207 11250 UPMNSVCD # BE UPDATED IS IN THE EARTH OR LUNAR
052836,001060: 04,3210 11215 INTWAKEM # SPHERE OF INFLUENCE.........
052837,001061: 04,3211 43174 AXT,2 CLRGO # EARTH SPHERE OF INFLUENCE.
052838,001062: 04,3212 00000 DEC 0 B-14
052839,001063:
![]() |
Page 1223 |
052841,001065: 04,3213 00223 MOONFLAG
052842,001066: 04,3214 11220 INTWAKEC
052843,001067: 04,3215 43174 INTWAKEM AXT,2 SET # LUNAR SPHERE OF INFLUENCE.
052844,001068: 04,3216 00002 DEC 2 B-14
052845,001069: 04,3217 00063 MOONFLAG
052846,001070: 04,3220 50135 INTWAKEC SLOAD BMN # COMMON CODING AFTER X2 INITIALIZED AND
052847,001071: # MOONFLAG SET (OR CLEARED).
052848,001072: 04,3221 01502 UPSVFLAG # IS THIS A REQUEST FOR A LEM OR CSM
052849,001073: 04,3222 11230 INTWAKLM # STATE VECTOR UPDATE......
052850,001074: 04,3223 77624 CALL # UPDATE CSM STATE VECTOR
052851,001075: 04,3224 26717 ATOPCSM
052852,001076:
052853,001077: 04,3225 52014 CLEAR GOTO
052854,001078: 04,3226 01671 ORBWFLAG
052855,001079: 04,3227 11232 INTWAKEX
052856,001080:
052857,001081: 04,3230 77624 INTWAKLM CALL # UPDATE LM STATE VECTOR
052858,001082: 04,3231 26772 ATOPLEM
052859,001083:
052860,001084: 04,3232 77414 INTWAKEX CLEAR EXIT
052861,001085: 04,3233 02676 RENDWFLG
052862,001086:
052863,001087: 04,3234 34746 CAF ZERO
052864,001088: 04,3235 00006 EXTEND
052865,001089: 04,3236 01077 WRITE CHAN77 # ZERO CHANNEL 77
052866,001090: 04,3237 E3,1501 EBANK= UPSVFLAG
052867,001091: 04,3237 55501 TS UPSVFLAG
052868,001092:
052869,001093: 04,3240 06060 TC INTPRET
052870,001094: 04,3241 77624 INTWAKUP CALL
052871,001095: 04,3242 27456 INTWAKE0 # RELEASE :GRAB: OF ORBIT INTEG
052872,001096: 04,3243 77776 EXIT
052873,001097:
052874,001098: 04,3244 05355 TC PHASCHNG
052875,001099: 04,3245 04026 OCT 04026
052876,001100: 04,3246 03714 TC UPOUT +1
052877,001101:
052878,001102: 04,3247 00002 UPMNSVCD OCT 2
052879,001103: 04,3250 00000 OCT 0
052880,001104:
052881,001105: 24,2000 SETLOC ORBITAL4
052882,001106: 24,2000 BANK
052883,001107: 24,3770 COUNT* $$/INTIN
052884,001108:
052885,001109: 24,3770 77420 GRP2PC STQ EXIT
052886,001110: 24,3771 02711 GRP2SVQ
052887,001111: 24,3772 05355 TC PHASCHNG
052888,001112: 24,3773 04022 OCT 04022
052889,001113: 24,3774 06060 TC INTPRET
![]() |
Page 1224 |
052891,001115: 24,3775 77650 GOTO
052892,001116: 24,3776 02711 GRP2SVQ
End of include-file INTEGRATION_INITIALIZATION.agc. Parent file is MAIN.agc