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