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