Source Code
These source-code files were transcribed from scans made from Don Eyles's personal
copy of BURST120 (SUNBURST 120). They were scanned at archive.org's Boston
facility, and the scanning was sponsored by Mike Stewart. The code was transcribed
from these scans by a team of volunteers who are referenced in the program
comments. Comments from the original source code are in ALL-CAPS, whereas
comments added later in transcription are in Mixed-Case. In some cases, where
similar code blocks exist in previously-transcribed AGC programs (primarily
Luminary 99, from Apollo 11) those code blocks were used as a starting point and
then corrected to agree with the BURST120 scans. The full scans are available
at the Virtual AGC
project's collection at archive.org, while more-convenient reduced-size (but reduced-quality)
images are available at
the main Virtual AGC website. Report any errors noted by creating an
issue report at the Virtual AGC
project's GitHub repository. Notations on the program listing read, in part:YUL SYSTEM FOR AGC: REVISION 0 OF PROGRAM BURST120 BY NASA 2021106-031 DEC 7, 1967 THIS LISTING IS A COPY OF A VERSION OF THE PROGRAM INTENDED FOR USE IN THE ON-BOARD PRIMARY GUIDANCE COMPUTER IN THE UNMANNED FLIGHT OF APOLLO LUNAR MODULE 1 --- THE AS206 MISSION.Note that the date is the date of the printout, not the date of the program revision. |
037341,000002: ## Copyright: Public domain.
037342,000003: ## Filename: SECOND_DPS_GUIDANCE.agc
037343,000004: ## Purpose: A module for revision 0 of BURST120 (Sunburst). It
037344,000005: ## is part of the source code for the Lunar Module's
037345,000006: ## (LM) Apollo Guidance Computer (AGC) for Apollo 5.
037346,000007: ## Assembler: yaYUL
037347,000008: ## Contact: Ron Burkey <info@sandroid.org>.
037348,000009: ## Website: www.ibiblio.org/apollo/index.html
037349,000010: ## Mod history: 2016-09-30 RSB Created draft version.
037350,000011: ## 2016-10-26 MAS Began.
037351,000012: ## 2016-10-27 MAS Completed transcription.
037352,000013: ## 2016-10-31 RSB Typos.
037353,000014: ## 2016-11-01 RSB In three places, OCT fractional numbers (such as "OCT .6"),
037354,000015: ## which are not supported by yaYUL, have been replaced by
037355,000016: ## decimal equivalents ("DEC .75"), in lieu of modifying
037356,000017: ## yaYUL at this time. Appropriate comments were also added
037357,000018: ## at the points in the code where this happened.
037358,000019: ## 2016-11-02 RSB More typos.
037359,000020: ## 2016-12-06 RSB Comment proofing via octopus/ProoferComments
037360,000021: ## performed, and changes made.
037361,000022:
Page 871 |
037363,000024:
037364,000025: # PROGRAM NAME - SECOND DPS GUIDANCE
037365,000026:
037366,000027: # MOD NO. - 0
037367,000028:
037368,000029: # MODIFICATION BY - KLUMPP AND EYLES
037369,000030:
037370,000031: # FUNCTIONAL DESCRIPTION -
037371,000032:
037372,000033: # THERE ARE TWO MODES OF OPERATION OF THE SECOND DPS GUIDANCE PROGRAM (2DPS). PRIOR TO THE IGNITION
037373,000034: # SEQUENCE 2DPS IS OPERATED IN THE PRE-IGNITION MODE FOR THE PURPOSE OF PROVIDING, FOR THE IGNITION
037374,000035: # SEQUENCE, THE TIME OF INITIATION AND THE DIRECTION OF THRUST. IMMEDIATELY AFTER THE IGNITION SEQUENCE
037375,000036: # IS COMPLETED, INCLUDING THE COMMAND OF MAXIMUM THRUST, 2DPS IS ENGAGED IN THE THRUSTING MODE FOR THE
037376,000037: # PURPOSE OF PROVIDING THRUST ACCELERATION MAGNITUDE AND DIRECTION COMMANDS NECESSARY TO CONDUCT THE
037377,000038: # SIMULATED POWERED LANDING MANEUVER.
037378,000039:
037379,000040: # PRIOR TO LAUNCH, ERASABLE MEMORY MUST BE LOADED WITH THE SEMI-UNIT NORMAL TO THE PLANE OF THE
037380,000041: # REQUIRED ORBIT CPT6/2, AND DATA WHICH INDIRECTLY SPECIFICIES THE NOMINAL IGNITION TIME TIGNOM. THESE
037381,000042: # DATA MAY BE ADJUSTED, AS A GROUP, VIA THE UPLINK, UNTIL 200 SECONDS PRIOR TO THE TIGNOM IMPLIED BY THE
037382,000043: # PRE-LAUNCH LOAD OR IMPLIED BY THE UPLINK DATA, WHICHEVER IS EARLIER. A DESCRIPTION OF THE METHOD OF
037383,000044: # UPDATING TIGNOM IS IN THE PROVINCE OF THE MISSION CONTROL PROGRAM (MCP) MISSION PHASE 11 -
037384,000045: # DPS2/FITH/APS1. THE TARGETING IS CONTROLLED BY THE SEMI-UNIT VECTOR CPT6/2 AS DESCRIBED IN THE 206 GSOP.
037385,000046:
037386,000047: # AT APPROXIMATELY 180 SECONDS PRIOR TO TIGNOM, THE MCP ENGAGES 2DPS IN THE PRE-IGNITION MODE BY
037387,000048: # PROVIDING AN EXTRAPOLATED TIME AND STATE IN THE REGISTERS TET, RIGNTION, VIGNTION, AND TRANSFERRING
037388,000049: # CONTROL TO LOCATION PREBURN IN 2DPS. THIS TIME AND STATE ARE AT APPROXIMATELY 50 SECONDS PRIOR TO
037389,000050: # TIGNOM. (THE NAMES RIGNTION, VIGNTION, CHOSEN TO INDICATE USAGE WITH OTHER GUIDANCE PROGRAMS, ARE
037390,000051: # MISLEADING WITH 2DPS IN THAT THE EXTRAPOLATED STATE PROVIDED IN THESE REGISTERS IS NOT THAT EXPECTED AT
037391,000052: # IGNITION BUT RATHER AT 50 SECONDS PRIOR TO IGNITION.) 2DPS TRANSFERS THE CONTENTS OF TET TO PIPTIME
037392,000053: # AND CALLS SUBROUTINE VPATCHER WHICH TRANSFERS THE STATE TO RN, VN AND INITIALIZES FOR CALCRVG.
037393,000054: # USING CALCRVG AS A SUBROUTINE, AND INTERNAL SUBROUTINES IGNITN1 AND IGNITN2, 2DPS MOVES THE TIME AND
037394,000055: # STATE FORWARD TO A TIME GREATER THAN OR EQUAL TO TULLG-6 SECONDS AND LESS THAN OR EQUAL TO TULLG-3.8 SECONDS,
037395,000056: # LEAVING THIS CONSISTENT SET IN PIPTIME, RN, VN, WHERE TULLG IS THE PRECISE TIME FOR ULLAGE TO BE INITIATED
037396,000057: # AND IS LEFT IN THE REGISTER OF THAT NAME. 2DPS LEAVES A SEMI-UNIT VECTOR IN THE DIRECTION IN WHICH
037397,000058: # THRUST IS TO BE COMMANDED DURING THE IGNITION SEQUENCE IN THE REGISTER POINTVSM AND BRANCHES TO
037398,000059: # LOCATION RETPREB IN THE MISSION CONTROL PROGRAM.
037399,000060:
037400,000061: # USING THE DATA LEFT BY THE PRE-IGNITION MODE OF 2DPS, THE MCP ENGAGES KALCMANU TO PROPERLY
037401,000062: # ORIENT THE SPACECRAFT FOR THE IGNITION SEQUENCE, AND ISSUES THE WAITLIST CALLS WHICH CAUSE THE
037402,000063: # READACCS, SERVICER, PGNCSMON LOOP TO BE ESTABLISHED (WITH 2DPS NOT IN THE LOOP) AND PRODUCE ULLAGE,
037403,000064: # ENGINE IGNITION, AND FINALLY MAXIMUM THRUST. IMMEDIATELY AFTER MAXIMUM THRUST IS COMMANDED, THE MCP
037404,000065: # PLACES THE 2BCADR OF BURN (EBANK= E2DPS) IN THE AVGEXIT WHICH CAUSES 2DPS TO BE ADDED TO THE READACCS,
037405,000066: # SERVICER, PGNCSMON LOOP IMMEDIATELY FOLLOWING CALCRVG.
037406,000067:
037407,000068: # WHEN CONTROL IS GIVEN TO 2DPS WITH THE 2BCADR OF BURN IN AVGEXIT, 2DPS OPERATES IN THE THRUSTING
037408,000069: # MODE. IT GENERATES THE SEQUENCING REQUIRED TO CONDUCT THE SIMULATED POWERED LANDING MANEUVER AND ISSUES
037409,000070: # THE THRUST ACCELERATION MAGNITUDE AND DIRECTION COMMANDS.
037410,000071:
037411,000072: # 2DPS GENERATES THE SEQUENCING BY INCREMENTING THE HIGH ORDER PART OF AVGEXIT, BY AN APPROPRIATE
037412,000073: # INTEGER, TO ACCOMPLISH EACH CHANGE OF 2DPS PHASE. THE INCREMENTING OF AVGEXIT CAUSES, ON THE SUBSEQUENT
Page 872 |
037414,000075: # PASS THROUGH 2DPS, CONTROL TO BEGIN AT A NEW POINT IN THE SECOND DPS FLITE SEQUENCE TABLE, AND
037415,000076: # CONSEQUENTLY THE CORRESPONDING 2DPS MODING TO BE ESTABLISHED.
037416,000077:
037417,000078: # 2DPS GENERATES THE THRUST ACCELERATION MAGNITUDE AND DIRECTION COMMANDS ON THE BASIS OF THE
037418,000079: # CONTENTS OF PIPTIME, RN, VN, AT THE BEGINNING OF THE PASS. TO ISSUE THE THRUST ACCELERATION DIRECTION
037419,000080: # COMMAND, 2DPS PLACES A SEMI-UNIT VECTOR IN THE REQUIRED DIRECTION IN THE REGISTER AXISD AND CALLS
037420,000081: # FINDCDUD AS A SUBROUTINE. TO ISSUE THE MAGNITUDE COMMAND, 2DPS PLACES THE REQUIRED MAGNITUDE IN THE
037421,000082: # REGISTER /ACF/ AND CALLS THROTCON AS A SUBROUTINE.
037422,000083:
037423,000084: # BEFORE BUT NOT INCLUDING THE LAST PASS, 2DPS TERMINATES THE JOB PERIODICALLY STARTED BY READACCS
037424,000085: # BY BRANCHING TO ENDOFJOB.
037425,000086:
037426,000087: # ON THE LAST PASS 2DPS PLACES THE SEMI-UNIT VECTOR ALONG THE NORMAL TO THE DESIRED ORBITAL PLANE,
037427,000088: # CPT6/2, IN THE REGISTER AXISD, CALLS FINDCDUD, AND BRANCHES TO LOCATION RETBURN IN THE MCP. THE MCP
037428,000089: # REMOVES 2DPS FROM THE READACCS, SERVICER, PGNCSMON LOOP AND ISSUES THE WAITLIST CALLS WHICH PRODUCE THE
037429,000090: # RANDOM THROTTLING. THE MCP DOES NOT CHANGE THE CONTENTS OF AXISD SUPPLIED BY 2DPS. CONSEQUENTLY THE
037430,000091: # THRUST ACCELERATION DURING RANDOM THROTTLING IS NORMAL TO THE ORBITAL PLANE.
037431,000092:
Page 873 |
037433,000094: # INTERFACE SPECIFICATIONS -
037434,000095: # SPECIFICATION PRE-IGNITION MODE THRUSTING MODE
037435,000096:
037436,000097: # CALLING SEQUENCE - DTCB TO PREBURN DTCB TO BURN
037437,000098: # (EBANK= E2DPS) (EBANK= E2DPS)
037438,000099:
037439,000100: # NORMAL EXITS - DTCB TO LOCATION PRIOR TO LAST PASS -
037440,000101: # RETPREB (EBANK= TC TO ENDOFJOB
037441,000102: # EMP11JOB) IN MISSION
037442,000103: # CONTROL PROGRAM. LAST PASS -
037443,000104: # DTCB TO LOCATION
037444,000105: # RETBURN (EBANK=
037445,000106: # EMP11JOB) IN MISSION
037446,000107: # CONTROL PROGRAM
037447,000108:
037448,000109: # ABORT EXITS - NONE NONE
037449,000110:
037450,000111: # ALARMS - ON OVERFLOW PRIOR TO OR SAME
037451,000112: # DURING COMPUTATION OF
037452,000113: # ACS OR AFCS, IN ADDITION, IF OVERFLOW
037453,000114: # SET ALARM 00410 OCCURS AFTER COMPUTATION
037454,000115: # AND RETAIN THE VARIABLES OF THE AFOREMENTIONED
037455,000116: # COMPUTED ON THE PREVIOUS VARIABLES,
037456,000117: # PASS. SET ALARM 00412
037457,000118: # AND SKIP ISSUANCE OF
037458,000119: # ON OVERFLOW DURING ATTITUDE AND THROTTLE
037459,000120: # COMPUTATION OF AFCS , COMMANDS.
037460,000121: # 1
037461,000122: # (YIELDS POSMAX),
037462,000123: # RETAIN POSMAX AND
037463,000124: # SET ALARM 00411.
037464,000125:
037465,000126: # ERAS INITIALIZATION - CPT6/2 (IMU COORDS) 2BCADR OF BURN
037466,000127: # OTHER INITIALIZATION (EBANK= E2DPS) MUST
037467,000128: # DONE INTERNALLY BE IN AVGEXIT. OTHER
037468,000129: # INITIALIZATION DONE IN
037469,000130: # PRE-IGNITION MODE.
037470,000131:
037471,000132: # INPUTS - TET PIPTIME
037472,000133: # RIGNTION RN
037473,000134: # VIGNTION VN
037474,000135:
037475,000136: # OUTPUTS - PIPTIME AXISD
037476,000137: # RN /ACF/
037477,000138: # VN
037478,000139: # TULLG
037479,000140: # POINTVSM
037480,000141:
037481,000142: # ERASABLES - AMEMORY THROUGH SAME
Page 874 |
037483,000144: # AMEMORY +215 OCT
037484,000145: # PLUS CPT6/2 IN
037485,000146: # NON SHARABLE E4LOAD
037486,000147:
037487,000148: # SUBROUTINES CALLED - ROOTPSRS ROOTPSRS
037488,000149: # VPATCHER FINDCDUD
037489,000150: # CALCRVG THROTCON
037490,000151:
Page 875 |
037492,000153: 22,2000 BANK 22
037493,000154: 22,2000 E4,1400 EBANK= E2DPS
037494,000155: # ************************************************************************
037495,000156: # INITIALIZATION OF SECOND DPS GUIDANCE - PREBURN
037496,000157: # ************************************************************************
037497,000158:
037498,000159: 22,2000 22,2000 PREBURN = INIT2DPS
037499,000160: 22,2000 03531 INIT2DPS TC PRETINIT # INITIALIZES INTERPRETER
037500,000161:
037501,000162: # CLEAR ORBITAL INTEGRATION VARIABLES FROM REGISTERS IN COMMON WITH 2DPS
037502,000163:
037503,000164: 22,2001 06112 TC INTPRET
037504,000165: 22,2002 77745 DLOAD
037505,000166: 22,2003 02047 TET # EXTRAPOLATED TIME FROM ORBITAL INTEGRATN
037506,000167: 22,2004 35307 STCALL PIPTIME # TIME REGISTER OF PIPASR
037507,000168: 22,2005 60436 VPATCHER # TRANSFERS RIGNTION, VIGNTION TO RN, VN,
037508,000169: 22,2006 77776 EXIT # AND DUPLICATES FUNCTIONS OF NORMLIZE
037509,000170: 22,2007 04161 TC PHASCHNG # PRE-IGNITION MODE: START 2DPS PROTECTN,
037510,000171: 22,2010 05022 +502 OCT 05022 # ESTABLISHING PRIORITY.
037511,000172: 22,2011 20000 OCT 20000 # PREVENT REREADING ORBITAL INTEGRATION
037512,000173: # VARIABLES AFTER WRITING OVER THEM.
037513,000174:
037514,000175: # COMMON REGISTERS ARE CLEARED
037515,000176:
037516,000177: 22,2012 06112 TC INTPRET
037517,000178: 22,2013 77745 DLOAD
037518,000179: 22,2014 05707 IGNALGL
037519,000180: 22,2015 25073 STOVL AVGEXIT # SET UP RETURN ADDRESS IN AVGEXIT
037520,000181: 22,2016 05722 ZEROPOS
037521,000182: 22,2017 02211 STORE GDOTM1 # DERIVATIVE OF G FOR USE BY IGNITN1
037522,000183: 22,2020 16167 STODL UNAFC/2
037523,000184: 22,2021 05722 ZEROPOS
037524,000185: 22,2022 02055 STORE TTF/4TMP # ZERO AS IF COMING FROM PREVIOUS PHASE
037525,000186: 22,2023 77776 EXIT
037526,000187: 22,2024 33721 CA ZEROPOS
037527,000188: 22,2025 55402 TS FLPASS0 # SHOWS THIS IS INITIAL PASS THIS PHASE
037528,000189: 22,2026 03343 TC XTRTPIP # SETS TPIP EXTRAPOLATED
037529,000190: 22,2027 37743 CA POSMAX
037530,000191: 22,2030 55562 TS /AFC/ # FORCES INITIALIZATION OF COUNTFC
037531,000192: 22,2031 55563 TS /AFC/ +1 # ONLY REASON: TO ASSURE GOOD PARITY
037532,000193: 22,2032 55404 TS COUNTFCT # ONLY REASON: TO ASSURE GOOD PARITY
037533,000194: 22,2033 01072 TC AVGEXIT # RETURNS TO APPROPRIATE LOCATION IN 2DPS
037534,000195:
Page 876 |
037536,000197: # ************************************************************************
037537,000198: # SECOND DPS FLITE SEQUENCE TABLE
037538,000199: # ************************************************************************
037539,000200:
037540,000201: # INDIRECT ADDRESSES
037541,000202:
037542,000203: 22,2034 22,2043 BURN = QUAD0X
037543,000204: 22,2034 BRTTFNU = 1
037544,000205: 22,2034 PARL = 2
037545,000206: 22,2034 TBRL = 3
037546,000207: 22,2034 MOD2DPS = 4
037547,000208: 22,2034 TTF/4CR = 5
037548,000209: 22,2034 BRXEND = 6
037549,000210:
037550,000211: 22,2034 12234 IGNALG TCF TTFINCR
037551,000212: 22,2035 12216 TCF ADTTFNU # AS IF COMING FROM PREVIOUS PHASE
037552,000213: 22,2036 00000 OCT 00000
037553,000214: 22,2037 02124 ADRES TBRIGAL
037554,000215: 22,2040 00032 OCT 00032
037555,000216: 22,2041 77664 DEC -1.5 E2 B-15 # -1.5 SECONDS, TTF UNITS, COMPARES TTF/4
037556,000217: 22,2042 12741 TCF EXIGEND
037557,000218:
037558,000219: 22,2043 12234 QUAD0X TCF TTFINCR
037559,000220: 22,2044 12233 TCF RETTTFNU # AS IF CONTINUING PREBURN PHASE
037560,000221: 22,2045 00000 OCT 00000
037561,000222: 22,2046 02130 ADRES TBRQUAD
037562,000223: 22,2047 00042 OCT 00042
037563,000224: 22,2050 73465 DEC -045 E2 B-15 # -045 SECONDS, TTF UNITS, COMPARES TTF/4
037564,000225: 22,2051 13017 TCF EXQDLIN
037565,000226:
037566,000227: 22,2052 12234 QUAD0F TCF TTFINCR
037567,000228: 22,2053 12216 TCF ADTTFNU
037568,000229: 22,2054 00027 OCT 00027
037569,000230: 22,2055 02130 ADRES TBRQUAD
037570,000231: 22,2056 00042 OCT 00042
037571,000232: 22,2057 77551 DEC -3.0 E2 B-15 # -3.0 SECONDS, TTF UNITS, COMPARES TTF/4
037572,000233: 22,2060 13017 TCF EXQDLIN
037573,000234:
037574,000235: 22,2061 13271 LING0F TCF LSETEVN
037575,000236: 22,2062 12233 TCF RETTTFNU
037576,000237: 22,2063 00027 OCT 00027
037577,000238: 22,2064 02134 ADRES TBRLING
037578,000239: 22,2065 00042 OCT 00042
037579,000240: 22,2066 77746 DEC -.50 E2 B-15 # -.50 SECONDS, TTF UNITS, COMPARES TTF/4
037580,000241: 22,2067 13017 TCF EXQDLIN
037581,000242:
Page 877 |
037583,000244: 22,2070 13312 LING1F TCF LSETODD
037584,000245: 22,2071 12216 TCF ADTTFNU
037585,000246: 22,2072 00056 OCT 00056
037586,000247: 22,2073 02134 ADRES TBRLING
037587,000248: 22,2074 00042 OCT 00042
037588,000249: 22,2075 77746 DEC -.50 E2 B-15 # -.50 SECONDS, TTF UNITS, COMPARES TTF/4
037589,000250: 22,2076 13017 TCF EXQDLIN
037590,000251:
037591,000252: 22,2077 12234 QUAD2F TCF TTFINCR
037592,000253: 22,2100 12216 TCF ADTTFNU
037593,000254: 22,2101 00065 OCT 00065
037594,000255: 22,2102 02130 ADRES TBRQUAD
037595,000256: 22,2103 00043 OCT 00043
037596,000257: 22,2104 77551 DEC -3.0 E2 B-15 # -3.0 SECONDS, TTF UNITS, COMPARES TTF/4
037597,000258: 22,2105 13017 TCF EXQDLIN
037598,000259:
037599,000260: 22,2106 13271 LING2F TCF LSETEVN
037600,000261: 22,2107 12233 TCF RETTTFNU
037601,000262: 22,2110 00065 OCT 00065
037602,000263: 22,2111 02134 ADRES TBRLING
037603,000264: 22,2112 00043 OCT 00043
037604,000265: 22,2113 77746 DEC -.50 E2 B-15 # -.50 SECONDS, TTF UNITS, COMPARES TTF/4
037605,000266: 22,2114 13017 TCF EXQDLIN
037606,000267:
037607,000268: 22,2115 13312 LING3F TCF LSETODD
037608,000269: 22,2116 12216 TCF ADTTFNU
037609,000270: 22,2117 00114 OCT 00114
037610,000271: 22,2120 02134 ADRES TBRLING
037611,000272: 22,2121 00043 OCT 00043
The following line is supposed to read "DEC -.25 E2 B-15", which is supposed to assemble to the octal 77763 ... but actually assembles to 77762. For the present, it is being hard-coded as "OCT 77763" as a workaround. |
037615,000276: 22,2122 77763 OCT 77763 # -.25 SECONDS, TTF UNITS, COMPARES TTF/4
037616,000277: 22,2123 13043 TCF EXFINAL
037617,000278:
Page 878 |
037619,000280: # ************************************************************************
037620,000281: # SECOND DPS ROAD MAPS (BRANCH TABLES)
037621,000282: # ************************************************************************
037622,000283:
037623,000284: # INDIRECT ADDRESSES
037624,000285:
037625,000286: 22,2124 BRIGN1 = 0
037626,000287: 22,2124 BRLING = 1
037627,000288: 22,2124 BRIGN2 = 2
037628,000289: 22,2124 BRXMID = 3
037629,000290:
037630,000291: 22,2124 13077 TBRIGAL TCF IGNITN1
037631,000292: 22,2125 12442 TCF TTF/4CL
037632,000293: 22,2126 13172 TCF IGNITN2
037633,000294: 22,2127 12702 TCF EXIGMID
037634,000295:
037635,000296: 22,2130 12210 TBRQUAD TCF RETIGN1
037636,000297: 22,2131 12442 TCF TTF/4CL
037637,000298: 22,2132 12615 TCF RETIGN2
037638,000299: 22,2133 13017 TCF EXQDLIN
037639,000300:
037640,000301: 22,2134 12210 TBRLING TCF RETIGN1
037641,000302: 22,2135 13326 TCF LINGUID
037642,000303: 22,2136 12615 TCF RETIGN2
037643,000304: 22,2137 13017 TCF EXQDLIN
037644,000305:
Page 879 |
037646,000307: # ************************************************************************
037647,000308: # INITIALIZATION FOR EACH PASS
037648,000309: # ************************************************************************
037649,000310:
037650,000311: # NTLZPASS SETS INDICES, FILLS TPIPOLD, TPIP, R, V EVERY PASS; BRANCHES TO IGNITN1, ADTTFNU WHEN APPROPRIATE.
037651,000312:
037652,000313: 22,2140 00006 NTLZPASS EXTEND
037653,000314: 22,2141 23406 QXCH RETNTLZ # SAVE RETURN ADDRESS
037654,000315:
037655,000316: 22,2142 41072 CS AVGEXIT
037656,000317: 22,2143 63706 AD IGNALGL
037657,000318: 22,2144 00006 EXTEND
037658,000319: 22,2145 12152 BZF NTLZPSS1 # BRANCH IF AND ONLY IF PRE-IGNITION MODE
037659,000320:
037660,000321: 22,2146 04141 TC 2PHSCHNG # THRUSTING MODE, FIRST PHASCHNG IN 2DPS:
037661,000322: 22,2147 00035 OCT 00035 # IN GROUP 5, RETAIN ONLY PIPA TASK.
037662,000323: 22,2150 05022 +502 OCT 05022 # IN GROUP 2 START 2DPS PROTECTION
037663,000324: 22,2151 20000 OCT 20000 # WITH PRIORITY 20.
037664,000325:
037665,000326: 22,2152 03531 NTLZPSS1 TC PRETINIT # INITIALIZES INTERPRETER
037666,000327:
037667,000328: # SET MODE
037668,000329:
037669,000330: 22,2153 51072 INDEX AVGEXIT
037670,000331: 22,2154 30004 CA MOD2DPS
037671,000332: 22,2155 04122 TC NEWMODEA
037672,000333:
037673,000334: # SET INDICES
037674,000335:
037675,000336: 22,2156 00006 EXTEND
037676,000337: 22,2157 51072 INDEX AVGEXIT
037677,000338: 22,2160 30003 DCA PARL
037678,000339: 22,2161 53401 DXCH NDX2DPS
037679,000340: 22,2162 00006 EXTEND
037680,000341: 22,2163 41401 DCS NDX2DPS
037681,000342: 22,2164 50110 INDEX FIXLOC
037682,000343: 22,2165 52047 DXCH X1 # LOADS BOTH INTRP NDX REGS, NEEDED OR NOT
037683,000344:
037684,000345: # FILL TPIPOLD AND TPIP
037685,000346:
037686,000347: 22,2166 00006 EXTEND
037687,000348: 22,2167 31447 DCA TPIP
037688,000349: 22,2170 53451 DXCH TPIPOLD
037689,000350: 22,2171 04161 TC PHASCHNG # PROTECT TPIPOLD AND
037690,000351: 22,2172 04022 +402 OCT 04022 # PREVENT RETURNING TO PREVIOUS PROGRAM
037691,000352: 22,2173 00006 EXTEND
037692,000353: 22,2174 31307 DCA PIPTIME
037693,000354: 22,2175 53447 DXCH TPIP
037694,000355:
037695,000356: # FILL R AND V
037696,000357:
Page 880 |
037698,000359: 22,2176 06112 TC INTPRET
037699,000360: 22,2177 77775 VLOAD
037700,000361: 22,2200 01011 RN
037701,000362: 22,2201 26061 STOVL R # RN TO R WITHOUT RESCALING
037702,000363: 22,2202 01017 VN
037703,000364: 22,2203 77742 VSR2
037704,000365: 22,2204 02067 STORE V # VN TO V WITH SCALING ADJUSTMENT
037705,000366: 22,2205 77776 EXIT
037706,000367:
037707,000368: # IGNITN1 AND ADTTFNU BRANCH DECISIONS
037708,000369:
037709,000370: 22,2206 51401 INDEX NDXBR
037710,000371: 22,2207 10000 TCF BRIGN1 # TO IGNITN1 WHEN APPROPRIATE
037711,000372:
037712,000373: 22,2210 04161 RETIGN1 TC PHASCHNG # RETURN HERE WHETHER OR NOT DO IGNITN1.
037713,000374: 22,2211 04022 +402 OCT 04022 # PROTECT TTF/4TMP AS USED BY IGNITN1 FROM
037714,000375: # WIPEOUT BY ADTTFNU AND TTFINCR. ALSO
037715,000376: # PROTECT RTEMP, VTEMP, GDOTM1T FROM
037716,000377: # RS, VS, ASPRT, (TIME SHARED)
037717,000378:
037718,000379: 22,2212 11402 CCS FLPASS0
037719,000380: 22,2213 12235 TCF TTFINCR +1 # ON OTHER THAN FIRST PASS IN ANY PHASE.
037720,000381: 22,2214 51072 INDEX AVGEXIT
037721,000382: 22,2215 10001 TCF BRTTFNU # TO ADTTFNU WHEN APPROPRIATE
037722,000383:
037723,000384: # ADD TTF/4NU TO TTF/4 FROM LAST PASS
037724,000385:
037725,000386: 22,2216 00006 ADTTFNU EXTEND
037726,000387: 22,2217 31453 DCA TTF/4
037727,000388: 22,2220 53455 DXCH TTF/4TMP
037728,000389: 22,2221 51400 INDEX NDX2DPS
037729,000390: 22,2222 33562 CA TTF/4NU
037730,000391: 22,2223 27454 ADS TTF/4TMP
037731,000392: 22,2224 04161 TC PHASCHNG # PROTECT TTF/4
037732,000393: 22,2225 04022 +402 OCT 04022
037733,000394: 22,2226 00006 EXTEND
037734,000395: 22,2227 31455 DCA TTF/4TMP
037735,000396: 22,2230 53453 DXCH TTF/4 # RENEWED TTF/4
037736,000397:
037737,000398: 22,2231 04161 TC PHASCHNG # PROTECT TTF/4TMP FROM WIPEOUT BY TTFINCR
037738,000399: 22,2232 04022 +402 OCT 04022
037739,000400: 22,2233 01406 RETTTFNU TC RETNTLZ
037740,000401:
037741,000402:
037742,000403:
037743,000404:
037744,000405: # ************************************************************************
037745,000406: # INCREMENT TTF/4
037746,000407: # ************************************************************************
037747,000408:
037748,000409: 22,2234 02140 TTFINCR TC NTLZPASS
Page 881 |
037750,000411: 22,2235 00006 +1 EXTEND
037751,000412: 22,2236 41451 DCS TPIPOLD
037752,000413: 22,2237 52145 DXCH MPAC
037753,000414: 22,2240 00006 EXTEND
037754,000415: 22,2241 31447 DCA TPIP
037755,000416: 22,2242 20145 DAS MPAC
037756,000417: 22,2243 37750 CA TSCALE
037757,000418: 22,2244 07375 TC DMPNSUB # (TPIP-TPIPOLD)/4 TO MPAC, TTF UNITS
037758,000419:
037759,000420: 22,2245 00006 EXTEND
037760,000421: 22,2246 31453 DCA TTF/4
037761,000422: 22,2247 20145 DAS MPAC # YIELDS INCREMENTED TTF/4 IN MPAC
037762,000423: 22,2250 52145 DXCH MPAC
037763,000424: 22,2251 53455 DXCH TTF/4TMP
037764,000425: 22,2252 04161 TC PHASCHNG # PROTECT TTF/4
037765,000426: 22,2253 04022 +402 OCT 04022
037766,000427: 22,2254 00006 EXTEND
037767,000428: 22,2255 31455 DCA TTF/4TMP
037768,000429: 22,2256 53453 DXCH TTF/4 # INCREMENTED TTF/4
037769,000430:
037770,000431:
037771,000432:
037772,000433: # ************************************************************************
037773,000434: # SET UP STATE IN LOCAL, PLANE, SPHERICAL COORDINATES
037774,000435: # ************************************************************************
037775,000436:
037776,000437: 22,2257 37743 STUP2DPS CA POSMAX
037777,000438: 22,2260 55524 TS CRS2 # SET CRS2 TO MAXIMUM. RESET LATER ONLY IF
037778,000439: 22,2261 55525 TS CRS2 +1 # RC/RS0 DOES NOT PRODUCE OVERFLOW
037779,000440:
037780,000441: 22,2262 06112 TC INTPRET
037781,000442: 22,2263 53575 VLOAD UNIT
037782,000443: 22,2264 02061 R
037783,000444: 22,2265 26012 STOVL CLT/2 # DEFINITION OF MATRIX CLT/2
037784,000445: 22,2266 02357 CPT6/2
037785,000446: 22,2267 53435 VXV UNIT
037786,000447: 22,2270 02012 CLT/2
037787,000448: 22,2271 26020 STOVL CLT/2 +6
037788,000449: 22,2272 02012 CLT/2
037789,000450: 22,2273 76435 VXV VSL1
037790,000451: 22,2274 02020 CLT/2 +6
037791,000452: 22,2275 26026 STOVL CLT/2 +14
037792,000453: 22,2276 02067 V
037793,000454: 22,2277 76521 MXV VSL1
037794,000455: 22,2300 02012 CLT/2 # - * -
037795,000456: 22,2301 26075 STOVL VL # VL = 2 CLT/2 V
037796,000457: 22,2302 02061 R
037797,000458: 22,2303 72441 DOT SL1
037798,000459: 22,2304 02357 CPT6/2 # - -
037799,000460: 22,2305 02103 STORE RP2 # RP2 = R.CPT6
037800,000461:
Page 882 |
037802,000463: 22,2306 63316 DSQ PDVL # PUSH DOWN RP2 SQUARED
037803,000464: 22,2307 02061 R
037804,000465: 22,2310 50235 VXV DOT
037805,000466: 22,2311 02067 V
037806,000467: 22,2312 02357 CPT6/2
037807,000468: 22,2313 77752 SL1 # - - -
037808,000469: 22,2314 26105 STOVL MAP2 # MAP2 = 2 R*V.CPT6/2
037809,000470: 22,2315 02061 R
037810,000471: 22,2316 77646 ABVAL # -
037811,000472: 22,2317 02111 STORE RS # RS0 = ABVAL(R)
037812,000473: 22,2320 45316 DSQ DSU # PUSHING UP RP2 SQUARED
037813,000474: 22,2321 77766 SQRT # 2 2
037814,000475: 22,2322 02107 STORE RC # RC = SQRT(RS0 -RP2 )
037815,000476: 22,2323 51025 DSU BPL # BRANCH IF RC/RS0 WOULD OVERFLOW
037816,000477: 22,2324 02111 RS
037817,000478: 22,2325 44332 SRS2COMP
037818,000479: 22,2326 56345 DLOAD DDV
037819,000480: 22,2327 02107 RC
037820,000481: 22,2330 02111 RS
037821,000482: 22,2331 02125 STORE CRS2 # COSINE(RS2) = RC/RS0
037822,000483: 22,2332 56345 SRS2COMP DLOAD DDV
037823,000484: 22,2333 02103 RP2
037824,000485: 22,2334 02111 RS
037825,000486: 22,2335 02127 STORE SRS2 # SINE(RS2) = RP2/RS0
037826,000487: 22,2336 67562 SR1R ARCSIN
037827,000488: 22,2337 52405 DMP SL3
037828,000489: 22,2340 05740 PI/4
037829,000490: 22,2341 16115 STODL RS +4 # RS2 = ARCSIN(RP2/RS0)
037830,000491: 22,2342 02103 RP2
037831,000492: 22,2343 77671 DDV
037832,000493: 22,2344 02107 RC
037833,000494: 22,2345 16131 STODL TRS2 # TANGENT (RS2) = RP2/RC
037834,000495: 22,2346 02101 VL +4
037835,000496: 22,2347 65271 DDV PDDL # THIS PUSH DOWN IS FOR 3RD COMP OF VS.
037836,000497: 22,2350 02111 RS
037837,000498: 22,2351 02077 VL +2
037838,000499: 22,2352 65271 DDV PDDL # THIS PUSH DOWN IS FOR 2ND COMP OF VS.
037839,000500: 22,2353 02107 RC
037840,000501: 22,2354 02075 VL
037841,000502: 22,2355 77666 VDEF # DEFINITION OF SPHERICAL VELOCITY VECTOR
037842,000503: 22,2356 16117 STODL VS
037843,000504: 22,2357 02121 VS +2
037844,000505: 22,2360 77716 DSQ
037845,000506: 22,2361 41205 DMP DMP
037846,000507: 22,2362 02127 SRS2
037847,000508: 22,2363 02125 CRS2
037848,000509: 22,2364 41325 PDDL DMP
037849,000510: 22,2365 02123 VS +4
037850,000511: 22,2366 02117 VS
037851,000512: 22,2367 72471 DDV SL1
Page 883 |
037853,000514: 22,2370 02111 RS
037854,000515: 22,2371 57415 DAD DCOMP
037855,000516: 22,2372 41325 PDDL DMP # THIS PUSH DOWN IS FOR 3RD COMP OF ASPRT.
037856,000517: 22,2373 02121 VS +2
037857,000518: 22,2374 02117 VS
037858,000519: 22,2375 77671 DDV
037859,000520: 22,2376 02111 RS
037860,000521: 22,2377 41325 PDDL DMP
037861,000522: 22,2400 02131 TRS2
037862,000523: 22,2401 02123 VS +4
037863,000524: 22,2402 77605 DMP
037864,000525: 22,2403 02121 VS +2
037865,000526: 22,2404 72425 DSU SL1
037866,000527:
037867,000528: 22,2405 77634 RTB # PREVENT OVERFLOW IN LINSET WHEN
037868,000529: 22,2406 33520 SGNAGREE # AFCS +2 =-POSMAX SGN( ASPRT +2)
037869,000530:
037870,000531: 22,2407 63525 PDDL DSQ # THIS PUSH DOWN IS FOR 2ND COMP OF ASPRT.
037871,000532: 22,2410 02111 RS
037872,000533: 22,2411 77665 BDDV
037873,000534: 22,2412 21203 MUEARTH
037874,000535: 22,2413 63525 PDDL DSQ
037875,000536: 22,2414 02123 VS +4
037876,000537: 22,2415 77605 DMP # -
037877,000538: 22,2416 02111 RS # THIS MONSTER ASPRT REPRESENTS
037878,000539: 22,2417 63525 PDDL DSQ # INCIDENTAL ACCELERATIONS; DUE
037879,000540: 22,2420 02125 CRS2 # TO GRAVITY, CORIOLIS FORCES,
037880,000541: 22,2421 63525 PDDL DSQ # AND SO FORTH.
037881,000542: 22,2422 02121 VS +2
037882,000543: 22,2423 41205 DMP DMP
037883,000544: 22,2424 02111 RS
037884,000545: 22,2425 45215 DAD DSU
037885,000546: 22,2426 77666 VDEF # DEFINITION OF ASPRT
037886,000547: 22,2427 02133 STORE ASPRT
037887,000548: 22,2430 77776 EXIT
037888,000549: 22,2431 37767 CA ZERO # SECOND COMPONENTS
037889,000550: 22,2432 55512 TS RS +2 # OF RS AND VS ARE
037890,000551: 22,2433 55513 TS RS +3 # ZEROED HERE TO PREVENT
037891,000552: 22,2434 55520 TS VS +2 # OVERFLOW TROUBLE IN
037892,000553: 22,2435 55521 TS VS +3 # THE ACS EQUATION.
037893,000554: 22,2436 04161 TC PHASCHNG # TIME ONLY?
037894,000555: 22,2437 04022 +402 OCT 04022
037895,000556: 22,2440 51401 INDEX NDXBR
037896,000557: 22,2441 10001 TCF BRLING # POSSIBLE BRANCH TO LINEAR GUIDANCE
037897,000558:
Page 884 |
037899,000560: # ************************************************************************
037900,000561: # TTF/4 COMPUTATION
037901,000562: # ************************************************************************
037902,000563:
037903,000564: 22,2442 00006 TTF/4CL EXTEND
037904,000565: 22,2443 51400 INDEX NDX2DPS
037905,000566: 22,2444 33606 DCA JDS2
037906,000567: 22,2445 53442 DXCH TABLTTF +6 # A(3) = JDS2 TO TABLTTF
037907,000568: 22,2446 00006 EXTEND
037908,000569: 22,2447 51400 INDEX NDX2DPS
037909,000570: 22,2450 33570 DCA ADS +4
037910,000571: 22,2451 20001 DDOUBL
037911,000572: 22,2452 52145 DXCH MPAC
037912,000573: 22,2453 33736 CA SP3/4
037913,000574: 22,2454 07357 TC SHORTMP # LEAVING A(2) IN MPAC
037914,000575: 22,2455 52145 DXCH MPAC
037915,000576: 22,2456 53440 DXCH TABLTTF +4 # A(2) = (6 ADS2)/4 TO TABLTTF
037916,000577: 22,2457 37754 CA BIT8
037917,000578: 22,2460 55443 TS TABLTTF +10 # FRACTIONAL PRECISION FOR TTF TO TABLE
037918,000579: 22,2461 00006 EXTEND
037919,000580: 22,2462 31523 DCA VS +4
037920,000581: 22,2463 52145 DXCH MPAC
037921,000582: 22,2464 33732 CA SP3/8
037922,000583: 22,2465 07357 TC SHORTMP # YIELDS 6/16 VS2 IN MPAC
037923,000584: 22,2466 00006 EXTEND
037924,000585: 22,2467 51400 INDEX NDX2DPS
037925,000586: 22,2470 33604 DCA VDS +4
037926,000587: 22,2471 20001 DDOUBL
037927,000588: 22,2472 52145 DXCH MPAC
037928,000589: 22,2473 53436 DXCH TABLTTF +2 # STORE 6/16 VS2 IN TABLTTF
037929,000590: 22,2474 33733 CA SP9/16
037930,000591: 22,2475 07357 TC SHORTMP # YIELDS 18/16 VDS2 IN MPAC
037931,000592: 22,2476 00006 EXTEND
037932,000593: 22,2477 41515 DCS RS +4
037933,000594: 22,2500 52145 DXCH MPAC # -RS2 TO MPAC, FETCHING 18/16 VDS2
037934,000595: 22,2501 21436 DAS TABLTTF +2 # A(1) = (6 VS2+18 VDS2)/16
037935,000596:
037936,000597: 22,2502 00006 EXTEND
037937,000598: 22,2503 51400 INDEX NDX2DPS
037938,000599: 22,2504 33576 DCA RDS +4
037939,000600: 22,2505 20145 DAS MPAC # YIELDS -RS2+RDS2 IN MPAC
037940,000601: 22,2506 33732 CA SP3/8
037941,000602: 22,2507 07357 TC SHORTMP
037942,000603: 22,2510 00006 EXTEND
037943,000604: 22,2511 30145 DCA MPAC
037944,000605: 22,2512 53434 DXCH TABLTTF # A(0) =-24(RS2-RDS2)/64
037945,000606:
037946,000607: 22,2513 00006 EXTEND
037947,000608: 22,2514 31453 DCA TTF/4
037948,000609: 22,2515 52145 DXCH MPAC # LOADS TTF/4 (INITIAL GUESS) INTO MPAC
Page 885 |
037950,000611: 22,2516 00006 EXTEND
037951,000612: 22,2517 33711 DCA TABLTTFL # LOADS A,L WITH TABLTTFL,2
037952,000613: 22,2520 03352 TC ROOTPSRS # YIELDS TTF/4 IN MPAC
037953,000614: 22,2521 00006 EXTEND
037954,000615: 22,2522 30145 DCA MPAC # FETCH TTF/4 KEEPING IT IN MPAC
037955,000616: 22,2523 53453 DXCH TTF/4 # CORRECTED TTF/4
037956,000617:
037957,000618: 22,2524 04161 TC PHASCHNG # TIME ONLY?
037958,000619: 22,2525 04022 +402 OCT 04022
037959,000620:
037960,000621:
037961,000622:
037962,000623: # ************************************************************************
037963,000624: # QUADRATIC GUIDANCE - SPHERICAL ACCELERATION AS QUADRATIC TIME FUNCTION
037964,000625: # ************************************************************************
037965,000626:
037966,000627: # -
037967,000628: # ACS EQUATION IS PROGRAMMED LIKE THIS:
037968,000629: # - -
037969,000630: # - - 1/2(RS-RDS)
037970,000631: # (VS+VDS) - -----------
037971,000632: # - TTF/4 -
037972,000633: # ACS = ---------------------- + ADS
037973,000634: # 2/3(TTF/4)
037974,000635:
037975,000636: 22,2526 06112 TC INTPRET
037976,000637: 22,2527 41345 DLOAD DMP
037977,000638: 22,2530 02053 TTF/4
037978,000639: 22,2531 05735 2DPS2/3
037979,000640: 22,2532 51715 PDVL VSU*
037980,000641: 22,2533 02111 RS
037981,000642: 22,2534 05572 RDS,1
037982,000643: 22,2535 70362 VSR1 V/SC
037983,000644: 22,2536 02053 TTF/4
037984,000645: 22,2537 52715 PDVL VAD*
037985,000646: 22,2540 02117 VS
037986,000647: 22,2541 05600 VDS,1
037987,000648: 22,2542 70251 VSU V/SC
037988,000649: 22,2543 41053 VAD* BOVB # BRANCH, SET ALARM, RETAIN GOOD ACS
037989,000650: 22,2544 05564 ADS,1
037990,000651: 22,2545 45061 OVF2DPS1
037991,000652:
037992,000653: 22,2546 52206 PUSH VSU # PUSH ACS UNTIL SEEN IF AFCS OVERFLOWS
037993,000654: 22,2547 02133 ASPRT
037994,000655: 22,2550 77600 BOV # BRANCH, SET ALARM, RETAIN GOOD AFCS
037995,000656: 22,2551 45057 OVF2DPS2
037996,000657: # - - -
037997,000658: 22,2552 26147 STOVL AFCS # AFCS = ACS-ASPRT
037998,000659: 22,2553 77626 STADR
037999,000660: 22,2554 75636 STORE ACS # BEHOLD, UNWORTHY MORTAL
038000,000661:
Page 886 |
038002,000663: 22,2555 63545 RETOVF12 DLOAD DSQ
038003,000664: 22,2556 02107 RC
038004,000665: 22,2557 65205 DMP PDDL
038005,000666: 22,2560 02053 TTF/4
038006,000667: 22,2561 02105 MAP2
038007,000668: 22,2562 64425 DSU SR2R
038008,000669: 22,2563 05610 MADP2
038009,000670: 22,2564 45471 DDV STADR # 2
038010,000671: 22,2565 75626 STORE AFCS +2 # AFCS = (MAP -MADP )/RC TTF
038011,000672: # 1 2 2
038012,000673: 22,2566 77604 BOVB # RETAIN POSMAX ON OVERFLOW, BUT
038013,000674: 22,2567 45066 OVF2DPS3 # BRANCH, SET ALARM, RETURN TO AFCCALC
038014,000675:
038015,000676:
038016,000677:
038017,000678: # ************************************************************************
038018,000679: # THRUST ACCEL POINTING AND MAGNITUDE COMMANDS - DUE TO QUAD OR LINR GUID
038019,000680: # ************************************************************************
038020,000681:
038021,000682: 22,2570 41345 AFCCALC DLOAD DMP # COME HERE FROM LINGUID
038022,000683: 22,2571 02153 AFCS +4
038023,000684: 22,2572 02111 RS
038024,000685: 22,2573 41325 PDDL DMP # PUSH AFCL
038025,000686: 22,2574 02151 AFCS +2 # 2
038026,000687: 22,2575 02107 RC
038027,000688: 22,2576 55525 PDDL VDEF # PUSH AFCL , FORM VECTOR AFCL
038028,000689: 22,2577 02147 AFCS # 1
038029,000690: 22,2600 76505 VXM VSL1
038030,000691: 22,2601 02012 CLT/2 # - *
038031,000692: 22,2602 02155 STORE AFC # AFC = (AFCS , RC AFCS , RS AFCS )CLT
038032,000693: 22,2603 77656 UNIT # 0 1 0 2
038033,000694: 22,2604 16167 STODL UNAFC/2
038034,000695: 22,2605 00045 36D # MAGNITUDE OF AFC, /AFC/
038035,000696: 22,2606 02163 STORE /AFC/ # FOR IGNITION ALGORITHM
038036,000697: 22,2607 77776 EXIT
038037,000698: 22,2610 51401 INDEX NDXBR
038038,000699: 22,2611 10002 TCF BRIGN2
038039,000700:
038040,000701: 22,2612 54111 -3 TS OVFIND # RETURN FROM TTF/4 OVERFLOW
038041,000702: 22,2613 37766 -2 CA FIVE # RETURN RESETTING COUNTFC
038042,000703: 22,2614 55404 -1 TS COUNTFCT # RETURN DECREMENTING COUNTFC
038043,000704: 22,2615 04161 RETIGN2 TC PHASCHNG # RETURN (NORMAL) FROM IGNITN2
038044,000705: 22,2616 04022 +402 OCT 04022 # PREVENT GOING FAR BACK IN 2DPS AFTR EXIT
038045,000706:
038046,000707:
038047,000708:
038048,000709: # ************************************************************************
038049,000710: # PREPARE TO EXIT
038050,000711: # ************************************************************************
038051,000712:
Page 887 |
038053,000714: # DOWNLINK ENTRIES
038054,000715:
038055,000716: 22,2617 00006 EXTEND
038056,000717: 22,2620 41453 DCS TTF/4
The following line has a short line drawn next to it, marking it for something. |
038058,000719: 22,2621 52145 DXCH MPAC
038059,000720: 22,2622 33720 CA TSCALINV
038060,000721: 22,2623 07357 TC SHORTMP
038061,000722: 22,2624 00004 INHINT
038062,000723: 22,2625 52145 DXCH MPAC
The "TTGO" in the following line is circled, with a line leading to the comment column on the right. At the end of the line is written "TTF". |
038065,000726: 22,2626 53746 DXCH TTGO
038066,000727: 22,2627 31447 CA TPIP +1
038067,000728: 22,2630 55723 TS DOWN2DPS
038068,000729: 22,2631 31072 CA AVGEXIT
038069,000730: 22,2632 55724 TS DOWN2DPS +1
038070,000731: 22,2633 35662 CA EBANK7 # MAKE UP A WORD WHICH MAY BE USED TO
038071,000732: 22,2634 56003 XCH EBANK # FIND OUT WHERE THE DOWNLIST POINTER IS
038072,000733: 22,2635 54002 TS Q # AT THE MOMENT.
038073,000734:
038074,000735: 22,2636 E7,1402 EBANK= TMINDEX
038075,000736:
038076,000737: 22,2636 31402 CA TMINDEX
038077,000738: 22,2637 00006 EXTEND
038078,000739: 22,2640 77753 MP BIT9 # PUT LOW 6 BITS OF TMINDEX INTO BITS
038079,000740: 22,2641 31401 CA DNTMGOTO # 14 - 9 OF L.
038080,000741: 22,2642 74564 MASK LOW8
038081,000742: 22,2643 26001 ADS L # ADD LOW 8 BITS OF DNTMGOTO.
038082,000743: 22,2644 00006 EXTEND
038083,000744: 22,2645 22003 QXCH EBANK
038084,000745:
038085,000746: 22,2646 E4,1400 EBANK= E2DPS
038086,000747:
038087,000748: 22,2646 31320 CA MASS
038088,000749: 22,2647 53726 DXCH DOWN2DPS +2
038089,000750: 22,2650 06112 TC INTPRET
038090,000751: 22,2651 77745 DLOAD
038091,000752: 22,2652 02163 /AFC/
"DOWN2DPS +4" in the following line is circled. |
038093,000754: 22,2653 26330 STOVL DOWN2DPS +4
038094,000755: 22,2654 02167 UNAFC/2
038095,000756: 22,2655 02332 STORE DOWN2DPS +6
038096,000757: 22,2656 77776 EXIT
038097,000758: 22,2657 00003 RELINT
038098,000759:
038099,000760: 22,2660 25402 INCR FLPASS0 # INCR FIRST PASS FLAG. REPEATS ARE OK.
038100,000761: 22,2661 51072 INDEX AVGEXIT
038101,000762: 22,2662 40005 CS TTF/4CR
038102,000763: 22,2663 61452 AD TTF/4
038103,000764: 22,2664 00006 EXTEND
038104,000765: 22,2665 51401 INDEX NDXBR
038105,000766: 22,2666 60003 BZMF BRXMID # CONTINUE PRESENT PHASE
038106,000767:
Page 888 |
038108,000769: 22,2667 31072 CA AVGEXIT # PREPARE FOR NEW PHASE
038109,000770: 22,2670 55405 TS AVGXTEMP # TEMPORARY PROTECTION FOR AVGEXIT
038110,000771: 22,2671 04161 TC PHASCHNG # PROTECT AVGEXIT
038111,000772: 22,2672 04022 +402 OCT 04022
038112,000773: 22,2673 31405 CA AVGXTEMP
038113,000774: 22,2674 67765 AD SEVEN
038114,000775: 22,2675 55072 TS AVGEXIT
038115,000776: 22,2676 37767 CA ZERO
038116,000777: 22,2677 55402 TS FLPASS0 # RESET FLAG INDICATING PASS ZERO (FIRST)
038117,000778: 22,2700 51405 INDEX AVGXTEMP
038118,000779: 22,2701 10006 TCF BRXEND
038119,000780:
Page 889 |
038121,000782: # ************************************************************************
038122,000783: # ROUTINES FOR EXITING FROM SECOND DPS GUIDANCE. THESE ARE:
038123,000784: # ************************************************************************
038124,000785:
038125,000786: # 1. EXIGMID CALLS CALCRVG AS AN INTERPRETIVE SUBROUTINE UP UNTIL BUT NOT INCLUDING THE LAST PASS DURING
038126,000787: # THE PREBURN PHASE. UPON RETURN EXIGMID RESTARTS 2DPS.
038127,000788:
038128,000789: # 2. EXIGEND IS USED ON THE LAST PASS DURING PREBURN. IT SETS UP FOR KALCMANU, FOR THE SUBSEQUENT 2DPS
038129,000790: # BURN, AND EXITS TO THE MISSION CONTROL PROGRAM.
038130,000791:
038131,000792: # 3. EXQDLIN IS USED TO TERMINATE EACH PASS UP UNTIL BUT NOT INCLUDING THE LAST PASS ON ALL 2DPS BURN
038132,000793: # PHASES. EXQDLIN OBTAINS ATTITUDE AND THROTTLE CONTROL AND TERMINATES THE JOB.
038133,000794:
038134,000795: # 4. EXFINAL IS THE FINAL 2DPS EXIT. IT SETS UP AND ISSUES THE ATTITUDE COMMAND FOR RANDOM THROTTLING
038135,000796: # AND EXITS TO THE MISSION CONTROL PROGRAM.
038136,000797:
038137,000798:
038138,000799:
038139,000800: # EXIGMID SETS UP FOR CALCRVG TO MOVE STATE FORWARD A SPECIFIED TIME, INITIALIZES THE INTERPRETER, CALLS CALCRVG
038140,000801: # AS AN INTERPRETIVE SUBROUTINE, AND UPON RETURN SETS UP FOR IGNALG AND BRANCHES INDIRECTLY THERETO.
038141,000802:
038142,000803: 22,2702 03531 EXIGMID TC PRETINIT # INITIALIZES INTERPRETER FOR CALCRVG
038143,000804: # SUCCEEDING CODING MUST NOT UNDO
038144,000805:
038145,000806: 22,2703 06112 TC INTPRET
038146,000807: 22,2704 43345 DLOAD DAD
038147,000808: 22,2705 05727 PIGNALG
038148,000809: 22,2706 01307 PIPTIME
038149,000810: 22,2707 26045 STOVL PIPTIMET # UPDATED PIPTIME TEMPORARY STORAGE
038150,000811: 22,2710 05722 ZEROPOS
038151,000812: 22,2711 34404 STCALL DELV # DELV = 0
038152,000813: 22,2712 61137 CALCRVG # STEPS FORWARD IN TIME LEAVING RN1, VN1
038153,000814: 22,2713 77776 EXIT
038154,000815:
038155,000816: 22,2714 33705 CA E2DPSL # ASSURE CORRECT EBANK BEFORE
038156,000817: 22,2715 54003 TS EBANK # DOING PHASCHNG
038157,000818: 22,2716 04161 TC PHASCHNG # PROTECT PIPTIME. PREVENT REDOING CALCRVG
038158,000819: 22,2717 04022 +402 OCT 04022
038159,000820: 22,2720 00004 RNVNSTOR INHINT # SET INHIBITED LOOP TO STORE FOR DWNLINK
038160,000821: 22,2721 33741 CA NSCALR-1
038161,000822: 22,2722 54070 RVSTOR TS RUPTREG1
038162,000823: 22,2723 50070 INDEX RUPTREG1
038163,000824: 22,2724 31050 CA RN1
038164,000825: 22,2725 50070 INDEX RUPTREG1
038165,000826: 22,2726 55010 TS RN # STORE UPDATED RN, VN
038166,000827: 22,2727 10070 CCS RUPTREG1
038167,000828: 22,2730 12722 TCF RVSTOR
038168,000829: 22,2731 00006 EXTEND
038169,000830: 22,2732 31445 DCA PIPTIMET
038170,000831: 22,2733 53307 DXCH PIPTIME # UPDATED PIPTIME
038171,000832:
Page 890 |
038173,000834: 22,2734 00006 EXTEND
038174,000835: 22,2735 31307 DCA PIPTIME
038175,000836: 22,2736 53327 DXCH STATIME # TIME FOR DWNLINK
038176,000837: 22,2737 00003 RELINT
038177,000838: 22,2740 01072 TC AVGEXIT # RETURNS TO APPROPRIATE LOCATION IN 2DPS
038178,000839:
038179,000840: # EXIGEND EXTRAPOLATES UNAFC/2 TO TTF/4 = 0, SETS UP FOR MISSION CONTROL PROGRAM, SETS UP FOR THE SUCCEEDING
038180,000841: # BRAKING PHASE, AND EXITS TO THE MISSION CONTROL PROGRAM.
038181,000842:
038182,000843: # EXTRAPOLATE UNAFC/2
038183,000844:
038184,000845: # UNAFC/2 = UNAFC/2+(UNAFC/2-UNAFC/2O)(TTF)/(TPIPOLD-TPIP)
038185,000846:
038186,000847: 22,2741 00006 EXIGEND EXTEND
038187,000848: 22,2742 31451 DCA TPIPOLD
038188,000849: 22,2743 52145 DXCH MPAC
038189,000850: 22,2744 00006 EXTEND
038190,000851: 22,2745 41447 DCS TPIP
038191,000852: 22,2746 20145 DAS MPAC
038192,000853: 22,2747 37750 CA TSCALE
038193,000854: 22,2750 00006 EXTEND
038194,000855: 22,2751 77761 MP BIT3 # MULTIPLIES BY N = 4 LEAVING RESULT IN L
038195,000856: 22,2752 30001 CA L # ASSUMES N(TPIPOLD-TPIP)/4>TTF/4 IN MAGN.
038196,000857: 22,2753 07375 TC DMPNSUB # N(TPIPOLD-TPIP)/4 TO MPAC, TTF UNITS
038197,000858: 22,2754 00006 EXTEND
038198,000859: 22,2755 31453 DCA TTF/4
038199,000860: 22,2756 52145 DXCH MPAC # DIVIDEND TO MPAC
038200,000861: 22,2757 52121 DXCH BUF # DIVISOR TO BUF
038201,000862: 22,2760 05317 TC USPRCADR
038202,000863: 22,2761 00352 CADR DDV/BDDV # (TTF/4)/(N(TPIPOLD-TPIP)/4) TO MPAC
038203,000864:
038204,000865: 22,2762 37767 CA ZERO
038205,000866: 22,2763 54153 TS MODE # TO INDICATE DP IN MPAC
038206,000867:
038207,000868: 22,2764 06112 TC INTPRET
038208,000869: 22,2765 52315 PDVL VSU
038209,000870: 22,2766 02167 UNAFC/2
038210,000871: 22,2767 02175 UNAFC/20
038211,000872: 22,2770 74352 VSL2 VXSC # VSL2 UNDOES MP BIT3 PRECEDING
038212,000873: 22,2771 77655 VAD
038213,000874: 22,2772 02167 UNAFC/2 # YIELDS EXTRAPOLATED UNAFC/2
038214,000875:
038215,000876: # SET UP FOR MISSION CONTROL PROGRAM
038216,000877:
038217,000878: 22,2773 15656 STODL POINTVSM # STORE FOR KALCMANU
038218,000879: 22,2774 02053 TTF/4
038219,000880: 22,2775 41276 DCOMP DMP
038220,000881: 22,2776 05721 TSCALINV
038221,000882: 22,2777 77615 DAD
038222,000883: 22,3000 01307 PIPTIME
038223,000884:
Page 891 |
038225,000886: 22,3001 02057 STORE TULLG # TIME AT WHICH ULLAGE IS TO START
038226,000887:
038227,000888: 22,3002 77615 DAD
038228,000889: 22,3003 05547 PULLGCS
038229,000890: 22,3004 02270 STORE TIGN # DISPLAY TIGN FOR DOWNLINK.
038230,000891:
038231,000892: # SET UP FOR BRAKING PHASE
038232,000893:
038233,000894: 22,3005 77776 EXIT
038234,000895: 22,3006 04161 TC PHASCHNG # PROTECT TTF/4 AND PREVENT REREADING REG-
038235,000896: 22,3007 04022 +402 OCT 04022 # ISTERS REWRITTEN BY MISN CONT PROGRAM
038236,000897: 22,3010 00006 EXTEND
038237,000898: 22,3011 31455 DCA TTF/4TMP
038238,000899: 22,3012 53453 DXCH TTF/4
038239,000900:
038240,000901: # RETURN TO MISSION CONTROL PROGRAM
038241,000902:
038242,000903: 22,3013 03531 TC PRETINIT # INITIALIZES INTERPRETER
038243,000904: 22,3014 00006 EXTEND
038244,000905: 22,3015 33713 DCA RETPREBL
038245,000906: 22,3016 52006 DTCB
038246,000907:
Page 892 |
038248,000909: # EXQDLIN STORES THE SEMI-UNIT VECTOR DEFINING THE DIRECTION OF COMMANDED THRUST ACCELERATION (UNAFC/2) IN THE
038249,000910: # APPROPRIATE REGISTERS OF FINDCDUD (AXISD) AND CALLS FINDCDUD AND THROTCON AS SUBROUTINES.
038250,000911: # FINALLY EXQDLIN TERMINATES THE JOB.
038251,000912:
038252,000913: 22,3017 10111 EXQDLIN CCS OVFIND # IF OVF AFTER COMPUTING AFCS1, ALARM, AND
038253,000914: 22,3020 13073 TCF OVF2DPS4 # DO NOT ISSUE ATTITUDE OR THROTTLE CMDS.
038254,000915: 22,3021 13023 TCF +2
038255,000916: 22,3022 13073 TCF OVF2DPS4 # IN CASE OVFIND =-1
038256,000917:
038257,000918: 22,3023 06112 TC INTPRET
038258,000919: 22,3024 77775 VLOAD
038259,000920: 22,3025 02167 UNAFC/2
038260,000921: 22,3026 36233 STCALL AXISD
038261,000922: 22,3027 60703 FINDCDUD # ATTITUDE CONTROL
038262,000923:
038263,000924: 22,3030 74545 DLOAD SR1R # LOAD GOOD /AFC/.
038264,000925: 22,3031 02163 /AFC/ # SCALE TO THROTCON UNITS.
038265,000926: 22,3032 01323 STORE /ACF/ # STORE IN THROTCON ACCEL CMD REGISTERS
038266,000927: 22,3033 77776 EXIT
038267,000928: 22,3034 00006 EXTEND
038268,000929: 22,3035 33717 DCA THROTCOL
038269,000930: 22,3036 52006 DTCB # THROTTLE CONTROL
038270,000931:
038271,000932: 22,3037 04141 EXOVFLOW TC 2PHSCHNG # PREVENT RECALLING THROTCON AND FINDCDUD
038272,000933: 22,3040 00034 OCT 00034 # 4.3SPOT FOR ACCLJOB
038273,000934: 22,3041 00002 +002 OCT 00002 # INACTIVATE GROUP 2
038274,000935:
038275,000936: 22,3042 05567 TC ENDOFJOB # TERMINATES THE JOB PERIODICALLY STARTED
038276,000937: # BY A WAITLIST CALL FROM READACCS
038277,000938:
038278,000939:
038279,000940:
038280,000941: # EXFINAL IS THE FINAL EXIT FROM 2DPS. FIRST EXFINAL PLACES THE SEMI-UNIT NORMAL TO THE ORBITAL PLANE (CPT6/2)
038281,000942: # IN AXISD AND CALLS FINDCDUD AS A SUBROUTINE. THIS CAUSES FURTHER THRUSTING TO BE NORMAL TO THE ORBITAL PLANE.
038282,000943: # FINALLY EXFINAL RETURNS TO THE MISSION CONTROL PROGRAM WHICH EXECUTES THE RANDOM THROTTLING.
038283,000944:
038284,000945: 22,3043 06112 EXFINAL TC INTPRET
038285,000946: 22,3044 77775 VLOAD
038286,000947: 22,3045 02357 CPT6/2
038287,000948: 22,3046 36233 STCALL AXISD
038288,000949: 22,3047 60703 FINDCDUD # ATTITUDE CONTROL
038289,000950: 22,3050 77776 EXIT
038290,000951:
038291,000952: 22,3051 04161 TC PHASCHNG # PREVENT RECALLING FINDCDUD
038292,000953: 22,3052 04022 +402 OCT 04022
038293,000954:
038294,000955: 22,3053 03531 TC PRETINIT # INITIALIZES INTERPRETER
038295,000956: 22,3054 00006 EXTEND
038296,000957: 22,3055 33715 DCA RETBURNL
038297,000958: 22,3056 52006 DTCB
038298,000959:
Page 893 |
038300,000961: # ************************************************************************
038301,000962: # SPECIAL PURPOSE SUBROUTINES OF SECOND DPS GUIDANCE
038302,000963: # ************************************************************************
038303,000964:
038304,000965: # ************************************************************************
038305,000966: # OVERFLOW ACTIONS
038306,000967: # ************************************************************************
038307,000968:
038308,000969: 22,3057 77775 OVF2DPS2 VLOAD # FROM PUSH LIST, PURPOSE: RESET POINTER
038309,000970: 22,3060 77776 EXIT
038310,000971:
038311,000972: 22,3061 04755 OVF2DPS1 TC ALARM # OVERFLOW PRIOR TO (PRESUMABLY DURING)
038312,000973: 22,3062 00410 OCT 00410 # COMPUTATION OF ACS OR AFCS
038313,000974:
038314,000975: 22,3063 06112 TC INTPRET # OVFIND RESET BY BOVB OR BOV, NO REPEAT
038315,000976: 22,3064 77650 GOTO
038316,000977: 22,3065 44555 RETOVF12
038317,000978:
038318,000979:
038319,000980:
038320,000981: 22,3066 04755 OVF2DPS3 TC ALARM # DIVIDE OVERFLOW DURING COMPUTATION OF
038321,000982: 22,3067 00411 OCT 00411 # AFCS . BOVB RESETS OVFIND.
038322,000983: # 1
038323,000984: 22,3070 06112 TC INTPRET # SET ALARM AND RETURN
038324,000985: 22,3071 77650 GOTO
038325,000986: 22,3072 44570 AFCCALC
038326,000987:
038327,000988:
038328,000989:
038329,000990: 22,3073 54111 OVF2DPS4 TS OVFIND # OVERFLOW AFTER COMPUTATION OF ACS, AFCS,
038330,000991: 22,3074 04755 TC ALARM # AND AFCS . RESET OVFIND, SET ALARM, AND
038331,000992: 22,3075 00412 OCT 00412 # 1
038332,000993: # RETURN SKIPPING CALLS OF FINDCDUD AND
038333,000994: 22,3076 13037 TCF EXOVFLOW # THROTCON.
038334,000995:
Page 894 |
038336,000997: # ************************************************************************
038337,000998: # IGNITION ALGORITHM
038338,000999: # ************************************************************************
038339,001000:
038340,001001: # IGNITN1 EXTRAPOLATES THE GIVEN STATE FORWARD THROUGH THE TIME INTERVAL REQUIRED TO ACCOMPLISH ULLAGE AND TO
038341,001002: # LITE AT LOW THRUST AND TRIM THE ENGINE. THE EXTRAPOLATION ENDS AT THE TIME MAXIMUM THRUST WOULD BE COMMANDED
038342,001003: # IF THE LITEUP PROCEDURE WERE INITIATED AT THE CURRENT GIVEN TIME. (THE GIVEN TIME IS NOT TRUE. ALL GIVEN
038343,001004: # CONDITIONS INCLUDE A FREE-FALL EXTRAPOLATION OF THE ACTUAL ORBIT.) THE EXTRAPOLATION PERFORMED BY IGNITN1
038344,001005: # INCLUDES ALL EFFECTS OF ENGINE THRUST DURING THE LITEUP PROCEDURE, AND IT USES THE
038345,001006: # THRUST POINTING DIRECTION WHICH WILL BE COMMANDED AT THE INITIATION OF MAXIMUM THRUST.
038346,001007: # THIS EXTRAPOLATED STATE IS THEN FED TO THE GUIDANCE EQUATIONS, WHICH COMPUTE THE THRUST POINTING
038347,001008: # DIRECTION (UNAFC/2) AND THE THRUST ACCELERATION MAGNITUDE COMMAND (/AFC/).
038348,001009:
038349,001010: # IGNITN2 THEN RECEIVES THIS OUTPUT DATA FROM THE GUIDANCE EQUATIONS AND DETERMINES WHETHER THE THRUST
038350,001011: # ACCELERATION MAGNITUDE COMMAND IS MONOTONICALLY INCREASING. WHEN IT IS, IGNITN2 USES THE PRESENT AND PREVIOUS
038351,001012: # VALUES TO COMPUTE ONE QUARTER OF THE PRESENT TIME (TTF/4) RELATIVE TO THE TIME AT WHICH THE THRUST
038352,001013: # ACCELERATION MAGNITUDE COMMAND WILL REACH THE CRITERION VALUE (/AFC/CR) WHICH CORRESPONDS TO MAXIMUM THROTTLE.
038353,001014: # WHEN TTF/4 SO COMPUTED REACHES THE TIME CRITERION FOR TERMINATING THE PREBURN PHASE (TTF/4CR),
038354,001015: # EXIGEND IS PROCESSED, TERMINATING THE PHASE AND RETURNING CONTROL TO THE MISSION CONTROL PROGRAM.
038355,001016: # THE MISSION CONTROL PROGRAM EXECUTES THE COMPUTED IGNITION SEQUENCE. IGNITN2 MUST ALSO, ON EACH PASS,
038356,001017: # REESTABLISH CERTAIN DATA REQUIRED FOR THE SUBSEQUENT PASS.
038357,001018:
038358,001019: # IGNITION ALGORITHM PART 1
038359,001020: # ************************************************************************
038360,001021:
038361,001022: # DO TEMPORARY STORAGE
038362,001023:
038363,001024: 22,3077 06112 IGNITN1 TC INTPRET
038364,001025: 22,3100 77745 DLOAD
038365,001026: 22,3101 02163 /AFC/
038366,001027: 22,3102 26165 STOVL /AFC/OLD # OLD VALUE OF /AFC/ FOR USE BY IGNITN2
038367,001028:
038368,001029: 22,3103 02167 UNAFC/2
038369,001030: 22,3104 26175 STOVL UNAFC/20 # OLD VALUE OF UNAFC/2
038370,001031:
038371,001032: # EXTRAPOLATE STATE
038372,001033:
038373,001034: 22,3105 02061 R
038374,001035: 22,3106 24011 STOVL RDUM
038375,001036: 22,3107 02067 V
038376,001037: 22,3110 24017 STOVL VDUM
038377,001038: 22,3111 02211 GDOTM1
038378,001039: 22,3112 14025 STODL JDUM
038379,001040: 22,3113 05545 PFCULLG # ULLAGE PERIOD
038380,001041: 22,3114 14007 STODL PDUM # DUMMY PERIOD
038381,001042: 22,3115 05551 AFULLG # LEAVE AFULLG IN MPAC
038382,001043: 22,3116 77624 CALL # EXTRAPOLATES DUMMY STATE AND
038383,001044: 22,3117 45255 XTRIGN1 # LEAVES INITIAL GRAVITY IN GDUM
038384,001045:
038385,001046: 22,3120 77775 VLOAD
Page 895 |
038387,001048: 22,3121 00033 GDUM
038388,001049: 22,3122 16203 STODL GDUMPRES # SAVE INITL GRAVITY FOR COMPUTING GDOTM1
038389,001050:
038390,001051: 22,3123 05553 PFCLITE # LITEUP PERIOD
038391,001052: 22,3124 14007 STODL PDUM
038392,001053: 22,3125 05555 AFLITE # LEAVE AFLITE IN MPAC
038393,001054: 22,3126 77624 CALL
038394,001055: 22,3127 45255 XTRIGN1 # EXTRAPOLATE
038395,001056:
038396,001057: 22,3130 77745 DLOAD
038397,001058: 22,3131 05557 PFCTRIM # TRIM PERIOD
038398,001059: 22,3132 14007 STODL PDUM
038399,001060: 22,3133 05561 AFTRIM # LEAVE AFTRIM IN MPAC
038400,001061: 22,3134 77624 CALL
038401,001062: 22,3135 45255 XTRIGN1 # YIELDS FINAL EXTRAPOLATED STATE
038402,001063:
038403,001064: 22,3136 77775 VLOAD
038404,001065: 22,3137 00011 RDUM
038405,001066: 22,3140 26111 STOVL RTEMP # RESTART PROTECTION FOR EXTRAPOLATED R
038406,001067: 22,3141 00017 VDUM
038407,001068: 22,3142 36117 STCALL VTEMP # RESTART PROTECTION FOR EXTRAPOLATED V
038408,001069:
038409,001070: # COMPUTE DERIVATIVE OF GRAVITY
038410,001071:
038411,001072: 22,3143 45521 GDUMCL # YIELDS FINAL GRAVITY IN MPAC AND GDUM
038412,001073: 22,3144 70251 VSU V/SC
038413,001074: 22,3145 02203 GDUMPRES
038414,001075: 22,3146 05537 PPHM1 # COMPLETES COMPUTATION OF DERIV OF G
038415,001076: 22,3147 02133 STORE GDOTM1T # FOR USE NEXT PASS. RESTART PROTECTED.
038416,001077: 22,3150 77776 EXIT
038417,001078:
038418,001079: # GENERATION OF EXTRAPOLATED DATA COMPLETE. PROTECT AND TRANSFER TO STORAGE.
038419,001080:
038420,001081: 22,3151 04161 TC PHASCHNG # PROTECT R, V
038421,001082: 22,3152 04022 +402 OCT 04022
038422,001083: 22,3153 06112 TC INTPRET
038423,001084: 22,3154 77745 DLOAD
038424,001085: 22,3155 02055 TTF/4TMP
038425,001086: 22,3156 26053 STOVL TTF/4 # RESTORES TTF/4 TO LAST VALUE BY GUIDANCE
038426,001087: 22,3157 02111 RTEMP
038427,001088: 22,3160 26061 STOVL R # EXTRAPOLATED R
038428,001089: 22,3161 02117 VTEMP
038429,001090: 22,3162 26067 STOVL V # EXTRAPOLATED V
038430,001091: 22,3163 02133 GDOTM1T
038431,001092: 22,3164 02211 STORE GDOTM1 # DERIVATIVE OF G
038432,001093: 22,3165 77776 EXIT
038433,001094: 22,3166 31404 CA COUNTFCT
038434,001095: 22,3167 55403 TS COUNTFC # FOR IGNITN2
038435,001096: 22,3170 03343 TC XTRTPIP # YIELDS TPIP EXTRAPOLATED
038436,001097: 22,3171 12210 TCF RETIGN1
038437,001098:
Page 896 |
038439,001100: # IGNITION ALGORITHM PART 2
038440,001101: # ************************************************************************
038441,001102:
038442,001103: 22,3172 00006 IGNITN2 EXTEND
038443,001104: 22,3173 31453 DCA TTF/4
038444,001105: 22,3174 53455 DXCH TTF/4TMP # SAVE TTF/4 FOR NEXT PASS
038445,001106: 22,3175 04161 TC PHASCHNG # PROTECT TTF/4
038446,001107: 22,3176 04022 +402 OCT 04022
038447,001108: 22,3177 47743 CS POSMAX
038448,001109: 22,3200 55452 TS TTF/4 # PREVENT PREMATURE TERMINATION OF PREBURN
038449,001110:
038450,001111: # TEST WHETHER /AFC/ > /AFC/OLD, IF SO TEST WHETHER COUNTFC = 0.
038451,001112:
038452,001113: 22,3201 00006 EXTEND
038453,001114: 22,3202 31563 DCA /AFC/
038454,001115: 22,3203 52145 DXCH MPAC
038455,001116: 22,3204 00006 EXTEND
038456,001117: 22,3205 41565 DCS /AFC/OLD
038457,001118: 22,3206 20145 DAS MPAC # /AFC/-/AFC/OLD IN MPAC
038458,001119:
038459,001120: 22,3207 10144 CCS MPAC # TEST HI ORDER
038460,001121: 22,3210 13216 TCF TCOUNTFC
038461,001122: 22,3211 13213 TCF TSTLOAFC
038462,001123: 22,3212 12613 TCF RETIGN2 -2 # RESET COUNTFC
038463,001124: 22,3213 30145 TSTLOAFC CA MPAC +1 # TEST LO ORDER
038464,001125: 22,3214 00006 EXTEND
038465,001126: 22,3215 62613 BZMF RETIGN2 -2 # RESET COUNTFC
038466,001127: 22,3216 11403 TCOUNTFC CCS COUNTFC
038467,001128: 22,3217 12614 TCF RETIGN2 -1 # DECREMENT COUNTFC
038468,001129:
038469,001130: # RESET TTF/4 BY EXTRAPOLATING /AFC/
038470,001131:
038471,001132: # TTF/4 = (1/4)(TPIPOLD-TPIP)(/AFC/-/AFC/CR)/(/AFC/OLD-/AFC/)
038472,001133:
038473,001134: 22,3220 00006 EXTEND
038474,001135: 22,3221 31451 DCA TPIPOLD
038475,001136: 22,3222 52145 DXCH MPAC
038476,001137: 22,3223 00006 EXTEND
038477,001138: 22,3224 41447 DCS TPIP
038478,001139: 22,3225 20145 DAS MPAC
038479,001140: 22,3226 37750 CA TSCALE
038480,001141: 22,3227 07375 TC DMPNSUB # (1/4)(TPIPOLD-TPIP) TO MPAC, TTF UNITS
038481,001142:
038482,001143: 22,3230 00006 EXTEND
038483,001144: 22,3231 31563 DCA /AFC/
038484,001145: 22,3232 52150 DXCH MPAC +3
038485,001146: 22,3233 00006 EXTEND
038486,001147: 22,3234 43543 DCS /AFC/CR
038487,001148: 22,3235 20150 DAS MPAC +3
038488,001149: 22,3236 07155 TC DMP
038489,001150:
Page 897 |
038491,001152: 22,3237 00147 GENADR MPAC +3
038492,001153:
038493,001154: 22,3240 00006 EXTEND
038494,001155: 22,3241 31565 DCA /AFC/OLD
038495,001156: 22,3242 52121 DXCH BUF
038496,001157: 22,3243 00006 EXTEND
038497,001158: 22,3244 41563 DCS /AFC/
038498,001159: 22,3245 20121 DAS BUF
038499,001160: 22,3246 05317 TC USPRCADR
038500,001161: 22,3247 00352 CADR DDV/BDDV # YIELDS TTF/4 IN MPAC
038501,001162:
038502,001163: 22,3250 10111 CCS OVFIND
038503,001164: 22,3251 12612 TCF RETIGN2 -3 # IF TTF/4 OVFL. RESETS OVFIND, COUNTFC.
038504,001165:
038505,001166: 22,3252 52145 DXCH MPAC
038506,001167: 22,3253 53453 DXCH TTF/4
038507,001168: 22,3254 12615 TCF RETIGN2
038508,001169:
038509,001170:
038510,001171:
038511,001172: # ************************************************************************
038512,001173: # SPECIAL PURPOSE STATE EXTRAPOLATION SUBROUTINE FOR IGNITN1
038513,001174: # ************************************************************************
038514,001175:
038515,001176: # XTRIGN1 RECEIVES THE EXTRAPOLATION PERIOD IN PDUM; THE INITIAL STATE IN RDUM, VDUM; THE THRUST ACCELERATION
038516,001177: # MAGNITUDE IN MPAC, DIRECTION IN UNAFC/2; AND JERK IN JDUM.
038517,001178:
038518,001179: # IT LEAVES GRAVITY IN GDUM, THE TOTAL INITIAL ACCELERATION IN ADUM, AND THE EXTRAPOLATED STATE IN RDUM, VDUM.
038519,001180:
038520,001181: # PRESENTLY THE DUM REGISTERS OCCUPY LOCATIONS FIXLOC +6 THRU FIXLOC +45 OCTAL.
038521,001182:
038522,001183: 22,3255 77620 XTRIGN1 STQ
038523,001184: 22,3256 02007 RETXIGN1 # SAVE QPRET
038524,001185: 22,3257 74352 SL1 VXSC
038525,001186: 22,3260 02167 UNAFC/2
038526,001187: 22,3261 45006 PUSH CALL # PUSHES AF UNAFC
038527,001188: 22,3262 45521 GDUMCL # YIELDS GRAVITY IN MPAC AND GDUM
038528,001189: 22,3263 45455 VAD STADR
038529,001190: 22,3264 77736 STORE ADUM # ADUM = AF UNAFC+G
038530,001191: 22,3265 77624 CALL
038531,001192: 22,3266 45471 XTRDUMST # EXTRAPOLATES RDUM, VDUM
038532,001193: 22,3267 77650 GOTO
038533,001194: 22,3270 02007 RETXIGN1
038534,001195:
Page 898 |
038536,001197: # ************************************************************************
038537,001198: # LINEAR GUIDANCE - SPHERICAL ACCELERATION AS LINEAR TIME FUNCTION
038538,001199: # ************************************************************************
038539,001200:
038540,001201: # SET LINEAR GUIDANCE COEFFICIENTS IN EVEN NUMBERED PHASES
038541,001202: # ************************************************************************
038542,001203:
038543,001204: 22,3271 02140 LSETEVN TC NTLZPASS
038544,001205: 22,3272 06112 TC INTPRET
038545,001206: 22,3273 77773 VLOAD*
038546,001207: 22,3274 05564 ADS,1 # - -
038547,001208: 22,3275 16175 STODL ADLINS # ADLINS = ADS, ADLINS = ASPRT SUCH THAT
038548,001209: 22,3276 02135 ASPRT +2 # 1 1
038549,001210: 22,3277 02177 STORE ADLINS +2 # THE TARGET IS ZERO ANGULAR MOMNTUM RATE
038550,001211: 22,3300 40015 DAD BOV
038551,001212: 22,3301 02151 AFCS +2
038552,001213: 22,3302 45307 LSEOVF
038553,001214: 22,3303 26143 LSENOVF STOVL ACS +2 # ACS = ASPRT +AFCS
038554,001215: 22,3304 02175 ADLINS # 1 1 1
038555,001216: 22,3305 77650 GOTO
038556,001217: 22,3306 45317 LINSET
038557,001218:
038558,001219: 22,3307 52034 LSEOVF RTB GOTO # PLACE SIGNED POSMAX INTO MPAC & RETURN.
038559,001220: 22,3310 73501 SIGNMPAC
038560,001221: 22,3311 45303 LSENOVF
038561,001222:
038562,001223: # SET LINEAR GUIDANCE COEFFICIENTS IN ODD NUMBERED PHASES
038563,001224: # ************************************************************************
038564,001225:
038565,001226: 22,3312 02140 LSETODD TC NTLZPASS
038566,001227: 22,3313 06112 TC INTPRET
038567,001228: 22,3314 77773 VLOAD*
038568,001229: 22,3315 05564 ADS,1 # - -
038569,001230: 22,3316 02175 STORE ADLINS # ADLINS = ADS
038570,001231:
038571,001232: # COMMON PARTS OF LSETEVN AND LSETODD
038572,001233: # ************************************************************************
038573,001234:
038574,001235: 22,3317 77645 LINSET BVSU
038575,001236: 22,3320 02141 ACS # - - -
038576,001237: 22,3321 16203 STODL ADELLINS # ADELLINS = ACS-ADLINS
038577,001238: 22,3322 02053 TTF/4
038578,001239: 22,3323 02211 STORE TTFLIN/4
038579,001240: 22,3324 77776 EXIT
038580,001241: 22,3325 12235 TCF TTFINCR +1
038581,001242:
038582,001243: # LINEAR GUIDANCE EQUATIONS
038583,001244: # ************************************************************************
038584,001245:
038585,001246: 22,3326 06112 LINGUID TC INTPRET
038586,001247:
Page 899 |
038588,001249: 22,3327 56345 DLOAD DDV
038589,001250: 22,3330 02053 TTF/4
038590,001251: 22,3331 02211 TTFLIN/4
038591,001252: 22,3332 53361 VXSC VAD
038592,001253: 22,3333 02203 ADELLINS
038593,001254: 22,3334 02175 ADLINS
038594,001255: 22,3335 02141 STORE ACS # FOR USE BY LINSET FOR FAZES 6 AND 9
038595,001256: 22,3336 77651 VSU
038596,001257: 22,3337 02133 ASPRT # - - - -
038597,001258: 22,3340 02147 STORE AFCS # AFCS = TTF ADELLINS/TTFLIN+ADLINS-ASPRT
038598,001259: 22,3341 77650 GOTO
038599,001260: 22,3342 44570 AFCCALC
038600,001261:
038601,001262:
038602,001263:
038603,001264: # ************************************************************************
038604,001265: # SUBROUTINE TO SET TPIP EXTRAPOLATED
038605,001266: # ************************************************************************
038606,001267:
038607,001268: 22,3343 00006 XTRTPIP EXTEND
038608,001269: 22,3344 31307 DCA PIPTIME
038609,001270: 22,3345 53447 DXCH TPIP
038610,001271: 22,3346 00006 EXTEND
038611,001272: 22,3347 33541 DCA PPHM1CS
038612,001273: 22,3350 21447 DAS TPIP
038613,001274: 22,3351 00002 TC Q
038614,001275:
Page 900 |
038616,001277: # ************************************************************************
038617,001278: # GENERAL PURPOSE SUBROUTINES CONTRIBUTED BY SECOND DPS GUIDANCE
038618,001279: # ************************************************************************
038619,001280:
038620,001281: # ************************************************************************
038621,001282: # DOUBLE PRECISION ROOT FINDER SUBROUTINE
038622,001283: # ************************************************************************
038623,001284:
038624,001285: # N N-1
038625,001286: # ROOTPSRS FINDS ONE ROOT OF THE POWER SERIES A X + A X + ... + A X + A
038626,001287: # N N-1 1 0
038627,001288:
038628,001289: # USING NEWTON'S METHOD STARTING WITH AN INITIAL GUESS FOR THE ROOT. THE ENTERING DATA MUST BE AS FOLLOWS:
038629,001290:
038630,001291: # A SP LOC-3 ADRES FOR REFERENCING PWR COF TABL
038631,001292: # L SP N-1 N IS THE DEGREE OF THE POWER SERIES
038632,001293: # MPAC DP X INITIAL GUESS FOR ROOT
038633,001294:
038634,001295: # LOC-2N DP A(0)
038635,001296: # ...
038636,001297: # LOC DP A(N)
038637,001298: # LOC+2 SP PRECROOT PREC RQD OF ROOT (AS FRACT OF 1ST GUESS)
038638,001299:
038639,001300: # THE DP RESULT IS LEFT IN MPAC UPON EXIT, AND A SP COUNT OF THE ITERATIONS TO CONVERGENCE IS LEFT IN MPAC+2.
038640,001301: # RETURN IS TO LOC(TC POWRSERS)+1.
038641,001302:
038642,001303: # PRECAUTION: ROOTPSRS MAKES NO CHECKS FOR OVERFLOW OR FOR IMPROPER USAGE. IMPROPER USAGE COULD
038643,001304: # PRECLUDE CONVERGENCE OR REQUIRE EXCESSIVE ITERATIONS. AS A SPECIFIC EXAMPLE, ROOTPSRS FORMS A DERIVATIVE
038644,001305: # COEFFICIENT TABLE BY MULTIPLYING EACH A(I) BY I, WHERE I RANGES FROM 1 TO N. IF AN ELEMENT OF THE DERIVATIVE
038645,001306: # COEFFICIENT TABLE = 1 OR > 1 IN MAGNITUDE, ONLY THE EXCESS IS RETAINED. ROOTPSRS MAY CONVERGE ON THE CORRECT
038646,001307: # ROOT NONETHELESS, BUT IT MAY TAKE AN EXCESSIVE NUMBER OF ITERATIONS. THEREFORE THE USER SHOULD RECOGNIZE:
038647,001308:
038648,001309: # 1. USER'S RESPONSIBILITY TO ASSURE THAT I X A(I) < 1 IN MAGNITUDE FOR ALL I.
038649,001310:
038650,001311: # 2. USER'S RESPONSIBILITY TO ASSURE OVERFLOW WILL NOT OCCUR IN EVALUATING EITHER THE RESIDUAL OR THE DERIVATIVE
038651,001312: # POWER SERIES. THIS OVERFLOW WOULD BE PRODUCED BY SUBROUTINE POWRSERS, CALLED BY ROOTPSRS, AND MIGHT NOT
038652,001313: # PRECLUDE EVENTUAL CONVERGENCE.
038653,001314:
038654,001315: # 3. AT PRESENT, ERASABLE LOCATIONS ARE RESERVED ONLY FOR N UP TO 5. AN N IN EXCESS OF 5 WILL PRODUCE CHAOS.
038655,001316: # ALL ERASABLES USED BY ROOTPSRS ARE UNSWITCHED LOCATED IN THE REGION FROM MPAC-33 OCT TO MPAC+7.
038656,001317:
038657,001318: # 4. THE ITERATION COUNT RETURNED IN MPAC+2 MAY BE USED TO DETECT ABNORMAL PERFORMANCE.
038658,001319:
038659,001320: # STORE ENTERING DATA, INITLIZE ERASABLES
038660,001321:
038661,001322: 22,3352 00006 ROOTPSRS EXTEND
038662,001323: 22,3353 22122 QXCH RETROOT # RETURN ADRES
038663,001324: 22,3354 54107 TS PWRPTR # PWR TABL POINTER
038664,001325: 22,3355 52150 DXCH MPAC +3 # PWR TABL ADRES, N-1
038665,001326: 22,3356 33470 CA DERTABLL
Page 901 |
038667,001328: 22,3357 54131 TS DERPTR # DER TABL POINTER
038668,001329: 22,3360 54151 TS MPAC +5 # DER TABL ADRES
038669,001330: 22,3361 10150 CCS MPAC +4 # NO POWER SERIES OF DEGREE 1 OR LESS
038670,001331: 22,3362 54152 TS MPAC +6 # N-2
038671,001332: 22,3363 37767 CA ZERO # MODE USED AS ITERATION COUNTER. MODE
038672,001333: 22,3364 54153 TS MODE # MUST BE POS SO ABS WON'T COMP MPAC+3 ETC
038673,001334:
038674,001335: # COMPUTE CRITERION TO STOP ITERATING
038675,001336:
038676,001337: 22,3365 00006 EXTEND
038677,001338: 22,3366 30145 DCA MPAC # FETCH ROOT GUESS, KEEPING IT IN MPAC
038678,001339: 22,3367 52117 DXCH ROOTPS # AND IN ROOTPS
038679,001340: 22,3370 50147 INDEX MPAC +3 # PWR TABL ADRES
038680,001341: 22,3371 30005 CA 5 # PRECROOT TO A
038681,001342: 22,3372 07357 TC SHORTMP # YIELDS DP PRODUCT IN MPAC
038682,001343: 22,3373 05317 TC USPRCADR
038683,001344: 22,3374 01206 CADR ABS # YIELDS ABVAL OF CRITERION ON DX IN MPAC
038684,001345: 22,3375 52145 DXCH MPAC
038685,001346: 22,3376 52115 DXCH DXCRIT # CRITERION
038686,001347:
038687,001348: # SET UP DER COF TABL
038688,001349:
038689,001350: 22,3377 00006 EXTEND
038690,001351: 22,3400 50107 INDEX PWRPTR
038691,001352: 22,3401 30004 DCA 3
038692,001353: 22,3402 52145 DXCH MPAC # A(N) TO MPAC
038693,001354:
038694,001355: 22,3403 30150 CA MPAC +4 # N-1 TO A
038695,001356:
038696,001357: 22,3404 54130 DERCLOOP TS PWRCNT # LOOP COUNTER
038697,001358: 22,3405 67763 AD ONE
038698,001359: 22,3406 07375 TC DMPNSUB # YIELDS DERCOF = I X A(I) IN MPAC
038699,001360: 22,3407 00006 EXTEND
038700,001361: 22,3410 50107 INDEX PWRPTR
038701,001362: 22,3411 30002 DCA 1
038702,001363: 22,3412 52145 DXCH MPAC # A(I-1) TO MPAC, FETCHING DERCOF
038703,001364: 22,3413 50131 INDEX DERPTR
038704,001365: 22,3414 52004 DXCH 3 # DERCOF TO DER TABL
038705,001366: 22,3415 47762 CS TWO
038706,001367: 22,3416 26107 ADS PWRPTR # DECREMENT PWR POINTER
038707,001368: 22,3417 47762 CS TWO
038708,001369: 22,3420 26131 ADS DERPTR # DECREMENT DER POINTER
038709,001370: 22,3421 10130 CCS PWRCNT
038710,001371: 22,3422 13404 TCF DERCLOOP
038711,001372:
038712,001373: # CONVERGE ON ROOT
038713,001374:
038714,001375: 22,3423 00006 ROOTLOOP EXTEND
038715,001376: 22,3424 30117 DCA ROOTPS # FETCH CURRENT ROOT
038716,001377: 22,3425 52145 DXCH MPAC # LEAVE IN MPAC
Page 902 |
038718,001379: 22,3426 00006 EXTEND
038719,001380: 22,3427 30152 DCA MPAC +5 # LOAD A, L WITH DER TABL ADRES, N-2
038720,001381: 22,3430 07267 TC POWRSERS # YIELDS DERIVATIVE IN MPAC
038721,001382:
038722,001383: 22,3431 00006 EXTEND
038723,001384: 22,3432 30117 DCA ROOTPS
038724,001385: 22,3433 52145 DXCH MPAC # CURRENT ROOT TO MPAC, FETCHING DERIVTIVE
038725,001386: 22,3434 52121 DXCH BUF # LEAVE DERIVATIVE IN BUF AS DIVISOR
038726,001387: 22,3435 00006 EXTEND
038727,001388: 22,3436 30150 DCA MPAC +3 # LOAD A, L WITH PWR TABL ADRES, N-1
038728,001389: 22,3437 07267 TC POWRSERS # YIELDS RESIDUAL IN MPAC
038729,001390:
038730,001391: 22,3440 05317 TC USPRCADR
038731,001392: 22,3441 00352 CADR DDV/BDDV # YIELDS -DX IN MPAC
038732,001393:
038733,001394: 22,3442 00006 EXTEND
038734,001395: 22,3443 40145 DCS MPAC # FETCH DX, LEAVING -DX IN MPAC
038735,001396: 22,3444 20117 DAS ROOTPS # CORRECTED ROOT NOW IN ROOTPS
038736,001397:
038737,001398: 22,3445 05317 TC USPRCADR
038738,001399: 22,3446 01206 CADR ABS # YIELDS ABS(DX) IN MPAC
038739,001400: 22,3447 00006 EXTEND
038740,001401: 22,3450 40115 DCS DXCRIT
038741,001402: 22,3451 20145 DAS MPAC # ABS(DX)-ABS(DXCRIT) IN MPAC
038742,001403:
038743,001404: 22,3452 24153 INCR MODE # INCREMENT ITERATION COUNTER
038744,001405:
038745,001406: 22,3453 10144 CCS MPAC # TEST HI ORDER DX
038746,001407: 22,3454 13423 TCF ROOTLOOP
038747,001408: 22,3455 13457 TCF TESTLODX
038748,001409: 22,3456 13463 TCF ROOTSTOR
038749,001410: 22,3457 10145 TESTLODX CCS MPAC +1 # TEST LO ORDER DX
038750,001411: 22,3460 13423 TCF ROOTLOOP
038751,001412: 22,3461 13463 TCF ROOTSTOR
038752,001413: 22,3462 13463 TCF ROOTSTOR
038753,001414: 22,3463 52117 ROOTSTOR DXCH ROOTPS
038754,001415: 22,3464 52145 DXCH MPAC # STORE DP ROOT IN MPAC, MPAC+1
038755,001416: 22,3465 30153 CA MODE
038756,001417: 22,3466 54146 TS MPAC +2 # STORE SP ITERATION COUNT IN MPAC+2
038757,001418: 22,3467 00122 TC RETROOT
038758,001419:
038759,001420: 22,3470 00137 DERTABLL ADRES DERCOFN -3
038760,001421:
Page 903 |
038762,001423: # ************************************************************************
038763,001424: # GENERAL PURPOSE SUBROUTINE FOR EXTRAPOLATING DUMMY STATE RDUM, VDUM
038764,001425: # ************************************************************************
038765,001426:
038766,001427: # XTRDUMST REQUIRES THE EXTRAPOLATION PERIOD, INITIAL POSITION, INITIAL VELOCITY, INITIAL ACCELERATION, JERK
038767,001428: # TO ARRIVE IN PDUM, RDUM, VDUM, ADUM, JDUM.
038768,001429:
038769,001430: # IT LEAVES THE EXTRAPOLATED STATE IN RDUM, VDUM.
038770,001431:
038771,001432: # PRESENTLY THE DUM REGISTERS ARE LOCATIONS FIXLOC +6 THRU FIXLOC +31 OCTAL, AND FIXLOC +40 OCTAL THRU
038772,001433: # FIXLOC +45 OCTAL.
038773,001434:
038774,001435: # 2 3
038775,001436: # THE EQNS ARE RDUM = RDUM+VDUM PDUM+ADUM PDUM /2+JDUM PDUM /6,
038776,001437: # 2
038777,001438: # VDUM = VDUM+ADUM PDUM+JDUM PDUM /2.
038778,001439:
038779,001440: # THEY ARE PROGRAMMED AS RDUM = ((JDUM PDUM/3+ADUM)PDUM/2+VDUM)PDUM+RDUM
038780,001441:
038781,001442: # VDUM = (JDUM PDUM/2+ADUM)PDUM+VDUM
038782,001443:
038783,001444: 22,3471 77745 XTRDUMST DLOAD
038784,001445: 22,3472 00007 PDUM
038785,001446: 22,3473 74205 DMP VXSC
038786,001447: 22,3474 05731 1/3DP
038787,001448: 22,3475 00025 JDUM
038788,001449: 22,3476 74255 VAD VXSC
038789,001450: 22,3477 00041 ADUM
038790,001451: 22,3500 00007 PDUM
038791,001452: 22,3501 53362 VSR1 VAD
038792,001453: 22,3502 00017 VDUM
038793,001454: 22,3503 53361 VXSC VAD
038794,001455: 22,3504 00007 PDUM
038795,001456: 22,3505 00011 RDUM
038796,001457: 22,3506 14011 STODL RDUM # EXTRAPOLATED RDUM. NO RESTART PROTECTION
038797,001458:
038798,001459: 22,3507 00007 PDUM
038799,001460: 22,3510 74362 SR1R VXSC
038800,001461: 22,3511 00025 JDUM
038801,001462: 22,3512 74255 VAD VXSC
038802,001463: 22,3513 00041 ADUM
038803,001464: 22,3514 00007 PDUM
038804,001465: 22,3515 77655 VAD
038805,001466: 22,3516 00017 VDUM
038806,001467: 22,3517 00017 STORE VDUM # EXTRAPOLATED VDUM. NO RESTART PROTECTION
038807,001468: 22,3520 77616 RVQ
038808,001469:
Page 904 |
038810,001471: # ************************************************************************
038811,001472: # DUMMY GRAVITY SUBROUTINE
038812,001473: # ************************************************************************
038813,001474:
038814,001475: # GDUMCL COMPUTES GRAVITY GIVEN POSITION IN RDUM, LEAVING RESULT IN MPAC AND GDUM.
038815,001476:
038816,001477: # 2
038817,001478: # GDUM =-MUEARTH UNIT(RDUM)/((ABVAL(RDUM)) )
038818,001479:
038819,001480: 22,3521 57575 GDUMCL VLOAD VCOMP
038820,001481: 22,3522 00011 RDUM
038821,001482: 22,3523 74256 UNIT VXSC
038822,001483: 22,3524 21203 MUEARTH
038823,001484: 22,3525 76541 V/SC VSL1 # SHIFT COMPENSATES FOR SEMI-UNIT
038824,001485: 22,3526 00043 42
038825,001486: 22,3527 00033 STORE GDUM
038826,001487: 22,3530 77616 RVQ
038827,001488:
038828,001489:
038829,001490:
038830,001491: # ************************************************************************
038831,001492: # INTERPRETER INITIALIZATION SUBROUTINE
038832,001493: # ************************************************************************
038833,001494:
038834,001495: 22,3531 30110 PRETINIT CA FIXLOC
038835,001496: 22,3532 54156 TS PUSHLOC
038836,001497: 22,3533 37767 CA ZERO
038837,001498: 22,3534 54111 TS OVFIND
038838,001499: 22,3535 00002 TC Q
038839,001500:
Page 905 |
038841,001502: # ************************************************************************
038842,001503: # SECOND DPS TARGET PARAMETERS
038843,001504: # ************************************************************************
038844,001505:
038845,001506: # PARAMETER TABLE INDIRECT ADDRESSES
038846,001507:
038847,001508: 22,3536 22,3562 TTF/4NU = TTF/4N0X
038848,001509: 22,3536 22,3563 ADS = A0XS
038849,001510: 22,3536 22,3571 RDS = R0XS
038850,001511: 22,3536 22,3577 VDS = V0XS
038851,001512: 22,3536 22,3605 JDS2 = J0XS2
038852,001513: 22,3536 22,3607 MADP2 = MA0XP2
038853,001514:
038854,001515: # A CONSISTENT SET OF UNITS IS USED THRUOUT THE SECOND DPS GUIDANCE. THESE UNITS ARE:
038855,001516: # TIME 2( 15)CS; LENGTH 2( 24)M; ANGLE 2( 0)RAD.
038856,001517:
038857,001518: # IGNITION ALGORITHM - PREBURN PARAMETERS
038858,001519: # ************************************************************************
038859,001520:
038860,001521: 22,3536 03213 00000 PPHM1 2DEC* +3.350000000 E+3 B-15*
038861,001522:
038862,001523: 22,3540 00000 06426 PPHM1CS 2DEC* +3.350000000 E+3 B-28*
038863,001524:
038864,001525: 22,3542 00513 13111 /AFC/CR 2DEC* +3.159982925 E-4 B+6*
038865,001526:
038866,001527: 22,3544 00567 00000 PFCULLG 2DEC* +7.500000000 E+2 B-15*
038867,001528:
038868,001529: 22,3546 00000 01356 PULLGCS 2DEC* +7.500000000 E+2 B-28*
038869,001530:
038870,001531: 22,3550 00015 14247 AFULLG 2DEC* +1.276510908 E-5 B+6*
038871,001532:
038872,001533: 22,3552 00226 00000 PFCLITE 2DEC* +3.000000000 E+2 B-15*
038873,001534:
038874,001535: 22,3554 00047 24767 AFLITE 2DEC* +3.781860583 E-5 B+6*
038875,001536:
038876,001537: 22,3556 02176 00000 PFCTRIM 2DEC* +2.300000000 E+3 B-15*
038877,001538:
038878,001539: 22,3560 00047 27132 AFTRIM 2DEC* +3.788401593 E-5 B+6*
038879,001540:
Page 906 |
038881,001542: # PARAMETER TABLE FOR BURN PHASES
038882,001543: # ************************************************************************
038883,001544:
038884,001545: 22,3562 67637 TTF/4N0X DEC* -8.383250000 E+3 B-15*
038885,001546:
038886,001547: 22,3563 77753 42675 A0XS 2DEC* -1.994161737 E-5 B+6*
038887,001548:
038888,001549: 22,3565 00000 00000 2DEC 0 B-28
038889,001550:
038890,001551: 22,3567 02365 21076 2DEC* +7.216471076 E-11 B+30*
038891,001552:
038892,001553: 22,3571 14605 04744 R0XS 2DEC* +6.689950238 E+6 B-24*
038893,001554:
038894,001555: 22,3573 00000 00000 2DEC 0 B-28
038895,001556:
038896,001557: 22,3575 00415 31771 2DEC* +1.646802361 E-2 B-0*
038897,001558:
038898,001559: 22,3577 77766 76522 V0XS 2DEC* -2.825570521 E-1 B-9*
038899,001560:
038900,001561: 22,3601 00000 00000 2DEC 0 B-28
038901,001562:
038902,001563: 22,3603 76663 67211 2DEC* -1.095743551 E-6 B+15*
038903,001564:
038904,001565: 22,3605 01513 17626 J0XS2 2DEC* +1.463228058 E-15 B+45*
038905,001566:
038906,001567: 22,3607 01731 21421 MA0XP2 2DEC* +5.167109434 E+8 B-33*
038907,001568:
Page 907 |
038909,001570: 22,3611 75043 TTF/4N0F DEC* -3.000000000 E+3 B-15*
038910,001571:
038911,001572: 22,3612 00007 10202 A0FS 2DEC* +6.921710813 E-6 B+6*
038912,001573:
038913,001574: 22,3614 00000 00000 2DEC 0 B-28
038914,001575:
038915,001576: 22,3616 01412 02011 2DEC* +4.422776218 E-11 B+30*
038916,001577:
038917,001578: 22,3620 14602 07066 R0FS 2DEC* +6.686947349 E+6 B-24*
038918,001579:
038919,001580: 22,3622 00000 00000 2DEC 0 B-28
038920,001581:
038921,001582: 22,3624 00136 37231 2DEC* +5.797001734 E-3 B-0*
038922,001583:
038923,001584: 22,3626 77771 45437 V0FS 2DEC* -2.133175242 E-1 B-9*
038924,001585:
038925,001586: 22,3630 00000 00000 2DEC 0 B-28
038926,001587:
038927,001588: 22,3632 77241 50000 2DEC* -6.533226733 E-7 B+15*
038928,001589:
038929,001590: 22,3634 01303 02015 J0FS2 2DEC* +1.226559287 E-15 B+45*
038930,001591:
038931,001592: 22,3636 01731 21421 MA0FP2 2DEC* +5.167109434 E+8 B-33*
038932,001593:
038933,001594:
038934,001595:
038935,001596: 22,3640 77602 TTF/4NU1 DEC* -2.500000000 E+2 B-15*
038936,001597:
038937,001598: 22,3641 00014 36766 A1FS 2DEC* +1.236735582 E-5 B+6*
038938,001599:
038939,001600: 22,3643 00013 03266 2DEC* +6.312364424 E-13 B+30*
038940,001601:
038941,001602: 22,3645 01372 34106 2DEC* +4.336466703 E-11 B+30*
038942,001603:
Page 908 |
038944,001605: 22,3647 73321 TTF/4NU2 DEC* -4.700000000 E+3 B-15*
038945,001606:
038946,001607: 22,3650 00004 15764 A2FS 2DEC* +4.231238847 E-6 B+6*
038947,001608:
038948,001609: 22,3652 00000 00000 2DEC 0 B-28
038949,001610:
038950,001611: 22,3654 00523 24403 2DEC* +1.930634433 E-11 B+30*
038951,001612:
038952,001613: 22,3656 14577 26600 R2FS 2DEC* +6.684376002 E+6 B-24*
038953,001614:
038954,001615: 22,3660 00000 00000 2DEC 0 B-28
038955,001616:
038956,001617: 22,3662 00000 03346 2DEC* +6.577892482 E-6 B-0*
038957,001618:
038958,001619: 22,3664 77775 65065 V2FS 2DEC* -7.313936765 E-2 B-9*
038959,001620:
038960,001621: 22,3666 00000 00000 2DEC 0 B-28
038961,001622:
038962,001623: 22,3670 77770 43440 2DEC* -1.469364771 E-8 B+15*
038963,001624:
038964,001625: 22,3672 76346 50661 J2FS2 2DEC* -1.376890825 E-15 B+45*
038965,001626:
038966,001627: 22,3674 01731 21421 MA2FP2 2DEC* +5.167109434 E+8 B-33*
038967,001628:
038968,001629:
038969,001630:
038970,001631: 22,3676 77602 TTF/4NU3 DEC* -2.500000000 E+2 B-15*
038971,001632:
038972,001633: 22,3677 00011 21371 A3FS 2DEC* +9.104196458 E-6 B+6*
038973,001634:
038974,001635: 22,3701 00004 01370 2DEC* +2.300091883 E-13 B+30*
038975,001636:
038976,001637: 22,3703 00261 13043 2DEC* +1.008094512 E-11 B+30*
038977,001638:
Page 909 |
038979,001640: # ************************************************************************
038980,001641: # SECOND DPS CONSTANTS
038981,001642: # ************************************************************************
038982,001643:
038983,001644: # ADDRESS CONSTANTS
038984,001645:
038985,001646: 22,3705 02000 E2DPSL ECADR E2DPS # FOR ACCESSING EBANK OF 2DPS
038986,001647: 22,3706 E4,1400 EBANK= E2DPS
038987,001648: 22,3706 02034 44064 IGNALGL 2BCADR IGNALG
038988,001649:
038989,001650:
038990,001651: # THE NEXT TWO CONSTANTS MUST BE KEPT
038991,001652: # IN ORDER AND ADJACENT
038992,001653: 22,3710 01436 TABLTTFL ADRES TABLTTF +3 # ADRES TO REF TTF TABL
038993,001654: 22,3711 00002 DEGTTF-1 OCT 2 # DEGREE-1 OF TTF POWER SERIES
038994,001655:
038995,001656: 22,3712 E4,1662 EBANK= EMP11JOB
038996,001657: 22,3712 02035 74064 RETPREBL 2BCADR RETPREB
038997,001658:
038998,001659: 22,3714 E4,1662 EBANK= EMP11JOB
038999,001660: 22,3714 02257 74064 RETBURNL 2BCADR RETBURN
039000,001661:
039001,001662: 22,3716 E5,1565 EBANK= ETHROT
039002,001663: 22,3716 03476 60065 THROTCOL 2BCADR THROTCON
039003,001664:
039004,001665: # ARITHMETIC FRACTIONS AND INTEGERS
039005,001666:
039006,001667: 22,3720 7750 TSCALE = BIT12
039007,001668:
039008,001669: 22,3720 00010 TSCALINV OCT 00010
039009,001670: 22,3721 00000 ZEROPOS OCT 00000 # LO ORDER PART OF TSCALINV, AND
039010,001671: 22,3722 00000 OCT 00000 # FIRST COMPONENT OF ZERO VECTOR
039011,001672: 22,3723 77777 ZERONEG OCT 77777
039012,001673: 22,3724 77777 OCT 77777
039013,001674: 22,3725 00000 OCT 00000 # LAST COMPONENT OF ZERO VECTOR, AND
039014,001675: 22,3726 00000 PIGNALG OCT 00000 # HI ORDER PART OF PIGNALG, TPIP UNITS
039015,001676: 22,3727 00310 DEC +2 E+2 B-14 # LO ORDER PART OF PIGNALG, TPIP UNITS
039016,001677:
039017,001678: 22,3730 12525 12525 1/3DP 2DEC .3333333333
039018,001679:
The following line is "SP3/8 OCT .3 B14" in the original program listing, but the yaYUL assembler does not syntactically support this syntax for OCT, so it has been replaced by a numerical equivalent that the assembler does support. |
039022,001683: 22,3732 14000 SP3/8 DEC .375 B14
The following line is "SP9/16 OCT .44 B14" in the original program listing, but the yaYUL assembler does not syntactically support this syntax for OCT, so it has been replaced by a numerical equivalent that the assembler does support. |
039026,001687: 22,3733 22000 SP9/16 DEC .5625 B14
039027,001688: 22,3734 25252 25253 2/3DP 2DEC .6666666667
039028,001689:
039029,001690: 22,3736 22,3734 2DPS2/3 = 2/3DP
The following line is "SP3/4 OCT .6 B14" in the original program listing, but the yaYUL assembler does not syntactically support this syntax for OCT, so it has been replaced by a numerical equivalent that the assembler does support. |
039033,001694: 22,3736 30000 SP3/4 DEC .75 B14
039034,001695: 22,3737 31103 36652 PI/4 2DEC +3.14159265 B-2
039035,001696:
039036,001697: 22,3741 00021 NSCALR-1 OCT 00021 # 6 X 3 - 1 TO XPR 3 VCTRS, RN, VN, GDT/2
039037,001698:
Page 910 This page is empty except for a single "remark" line, which is also empty. |
End of include-file SECOND_DPS_GUIDANCE.agc. Parent file is MAIN.agc