Source Code
![]() |
These source-code files were transcribed from a printout in Don Eyles's personal
collection, scanned by archive.org, and financially sponsored by Peter McDermott.
A team of volunteers performed the transcription and proof-reading. The scanned
page images are available at
the Virtual AGC Project website, as well as higher-quality (but much larger)
images at
the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating
"issues" at
the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: YUL SYSTEM FOR AGC: NEW PROGRAM SHEPATIN BY EYLES DEC 13, 1966 THIS PROGRAM WAS ASSEMBLED AS A VERSION OF REVISION 37 OF PROGRAM SUNBURST BY LEM GROUPNote that the date is the date of the printout, not the date of the program revision. |
036727,000002: ## Copyright: Public domain.
036728,000003: ## Filename: SECOND_DPS_GUIDANCE.agc
036729,000004: ## Purpose: A section of Sunburst revision 37, or Shepatin revision 0.
036730,000005: ## It is part of an early development version of the software
036731,000006: ## for Apollo Guidance Computer (AGC) on the unmanned Lunar
036732,000007: ## Module (LM) flight Apollo 5. Sunburst 37 was the program
036733,000008: ## upon which Don Eyles's offline development program Shepatin
036734,000009: ## was based; the listing herein transcribed was actually for
036735,000010: ## the equivalent revision 0 of Shepatin.
036736,000011: ## This file is intended to be a faithful transcription, except
036737,000012: ## that the code format has been changed to conform to the
036738,000013: ## requirements of the yaYUL assembler rather than the
036739,000014: ## original YUL assembler.
036740,000015: ## Reference: pp. 814-850
036741,000016: ## Assembler: yaYUL
036742,000017: ## Contact: Ron Burkey <info@sandroid.org>.
036743,000018: ## Website: www.ibiblio.org/apollo/index.html
036744,000019: ## Mod history: 2017-05-24 MAS Created from Sunburst 120.
036745,000020: ## 2017-06-13 HG Transcribed
036746,000021: ## 2017-06-15 HG Fix interpretive operand /AFC/ -> /ACF/
036747,000022: ## 2017-06-17 MAS Added a workaround for yaYUL calculating a
036748,000023: ## fractional number off by one.
036749,000024: ## 2017-06-23 RSB Proofed comment text with
036750,000025: ## octopus/ProoferComments.
036751,000026:
![]() |
Page 814 |
036753,000028:
036754,000029: # PROGRAM NAME - SECOND DPS GUIDANCE
036755,000030:
036756,000031: # MOD NO. - 0
036757,000032:
036758,000033: # MODIFICATION BY - KLUMPP AND EYLES
036759,000034:
036760,000035: # FUNCTIONAL DESCRIPTION -
036761,000036:
036762,000037: # THERE ARE TWO MODES OF OPERATION OF THE SECOND DPS GUIDANCE PROGRAM (2DPS). PRIOR TO THE IGNITION
036763,000038: # SEQUENCE 2DPS IS OPERATED IN THE PRE-IGNITION MODE FOR THE PURPOSE OF PROVIDING, FOR THE IGNITION
036764,000039: # SEQUENCE, THE TIME OF INITIATION AND THE DIRECTION OF THRUST. IMMEDIATELY AFTER THE IGNITION SEQUENCE
036765,000040: # IS COMPLETED, INCLUDING THE COMMAND OF MAXIMUM THRUST, 2DPS IS ENGAGED IN THE THRUSTING MODE FOR THE
036766,000041:
036767,000042: # PURPOSE OF PROVIDING THRUST ACCELERATION MAGNITUDE AND DIRECTION COMMANDS NECESSARY TO CONDUCT THE
036768,000043: # SIMULATED POWERED LANDING MANEUVER.
036769,000044:
036770,000045: # PRIOR TO LAUNCH, ERASABLE MEMORY MUST BE LOADED WITH THE SEMI-UNIT NORMAL TO THE PLANE OF THE
036771,000046: # REQUIRED ORBIT CPT6/2, AND DATA WHICH INDIRECTLY SPECIFICIES THE NOMINAL IGNITION TIME TIGNOM. THESE
036772,000047: # DATA MAY BE ADJUSTED, AS A GROUP, VIA THE UPLINK, UNTIL 200 SECONDS PRIOR TO THE TIGNOM IMPLIED BY THE
036773,000048: # PRE-LAUNCH LOAD OR IMPLIED BY THE UPLINK DATA, WHICHEVER IS EARLIER. A DESCRIPTION OF THE METHOD OF
036774,000049: # UPDATING TIGNOM IS IN THE PROVINCE OF THE MISSION CONTROL PROGRAM (MCP) MISSION PHASE 11 -
036775,000050: # DPS2/FITH/APS1. THE TARGETING IS CONTROLLED BY THE SEMI-UNIT VECTOR CPT6/2 AS DESCRIBED IN THE 206 GSOP.
036776,000051:
036777,000052:
036778,000053: # AT APPROXIMATELY 180 SECONDS PRIOR TO TIGNOM, THE MCP ENGAGES 2DPS IN THE PRE-IGNITION MODE BY
036779,000054: # PROVIDING AN EXTRAPOLATED TIME AND STATE IN THE REGISTERS TET, RIGNTION, VIGNTION, AND TRANSFERRING
036780,000055: # CONTROL TO LOCATION PREBURN IN 2DPS. THIS TIME AND STATE ARE AT APPROXIMATELY 50 SECONDS PRIOR TO
036781,000056: # TIGNOM. (THE NAMES RIGNTION, VIGNTION, CHOSEN TO INDICATE USAGE WITH OTHER GUIDANCE PROGRAMS, ARE
036782,000057: # MISLEADING WITH 2DPS IN THAT THE EXTRAPOLATED STATE PROVIDED IN THESE REGISTERS IS NOT THAT EXPECTED AT
036783,000058: # IGNITION BUT RATHER AT 50 SECONDS PRIOR TO IGNITION.) 2DPS TRANSFERS THE CONTENTS OF TET TO PIPTIME
036784,000059: # AND CALLS SUBROUTINE VPATCHER WHICH TRANSFERS THE STATE TO RN, VN AND INITIALIZES FOR CALCRVG.
036785,000060: # USING CALCRVG AS A SUBROUTINE, AND INTERNAL SUBROUTINES IGNITN1 AND IGNITN2, 2DPS MOVES THE TIME AND
036786,000061: # STATE FORWARD TO A TIME GREATER THAN OR EQUAL TO TULLG-6 SECONDS AND LESS THAN OR EQUAL TO TULLG-3.8 SECONDS,
036787,000062: # LEAVING THIS CONSISTENT SET IN PIPTIME, RN, VN, WHERE TULLG IS THE PRECISE TIME FOR ULLAGE TO BE INITIATED
036788,000063: # AND IS LEFT IN THE REGISTER OF THAT NAME. 2DPS LEAVES A SEMI-UNIT VECTOR IN THE DIRECTION IN WHICH
036789,000064: # THRUST IS TO BE COMMANDED DURING THE IGNITION SEQUENCE IN THE REGISTER POINTVSM AND BRANCHES TO
036790,000065:
036791,000066: # LOCATION RETPREB IN THE MISSION CONTROL PROGRAM.
036792,000067:
036793,000068: # USING THE DATA LEFT BY THE PRE-IGNITION MODE OF 2DPS, THE MCP ENGAGES KALCMANU TO PROPERLY
036794,000069: # ORIENT THE SPACECRAFT FOR THE IGNITION SEQUENCE, AND ISSUES THE WAITLIST CALLS WHICH CAUSE THE
036795,000070: # READACCS, SERVICER, PGNCSMON LOOP TO BE ESTABLISHED (WITH 2DPS NOT IN THE LOOP) AND PRODUCE ULLAGE,
036796,000071: # ENGINE IGNITION, AND FINALLY MAXIMUM THRUST. IMMEDIATELY AFTER MAXIMUM THRUST IS COMMANDED, THE MCP
036797,000072: # PLACES THE 2BCADR OF BURN (EBANK= E2DPS) IN THE AVGEXIT WHICH CAUSES 2DPS TO BE ADDED TO THE READACCS,
036798,000073: # SERVICER, PGNCSMON LOOP IMMEDIATELY FOLLOWING CALCRVG.
036799,000074:
036800,000075: # WHEN CONTROL IS GIVEN TO 2DPS WITH THE 2BCADR OF BURN IN AVGEXIT, 2DPS OPERATES IN THE THRUSTING
036801,000076:
036802,000077: # MODE. IT GENERATES THE SEQUENCING REQUIRED TO CONDUCT THE SIMULATED POWERED LANDING MANEUVER AND ISSUES
036803,000078: # THE THRUST ACCELERATION MAGNITUDE AND DIRECTION COMMANDS.
036804,000079:
036805,000080: # 2DPS GENERATES THE SEQUENCING BY INCREMENTING THE HIGH ORDER PART OF AVGEXIT, BY AN APPROPRIATE
036806,000081: # INTEGER, TO ACCOMPLISH EACH CHANGE OF 2DPS PHASE. THE INCREMENTING OF AVGEXIT CAUSES, ON THE SUBSEQUENT
036807,000082:
![]() |
Page 815 |
036809,000084: # PASS THROUGH 2DPS, CONTROL TO BEGIN AT A NEW POINT IN THE SECOND DPS FLITE SEQUENCE TABLE, AND
036810,000085: # CONSEQUENTLY THE CORRESPONDING 2DPS MODING TO BE ESTABLISHED.
036811,000086:
036812,000087: # 2DPS GENERATES THE THRUST ACCELERATION MAGNITUDE AND DIRECTION COMMANDS ON THE BASIS OF THE
036813,000088: # CONTENTS OF PIPTIME, RN, VN, AT THE BEGINNING OF THE PASS. TO ISSUE THE THRUST ACCELERATION DIRECTION
036814,000089: # COMMAND, 2DPS PLACES A SEMI-UNIT VECTOR IN THE REQUIRED DIRECTION IN THE REGISTER AXISD AND CALLS
036815,000090:
036816,000091: # FINDCDUD AS A SUBROUTINE. TO ISSUE THE MAGNITUDE COMMAND, 2DPS PLACES THE REQUIRED MAGNITUDE IN THE
036817,000092: # REGISTER /ACF/ AND CALLS THROTCON AS A SUBROUTINE.
036818,000093:
036819,000094: # BEFORE BUT NOT INCLUDING THE LAST PASS, 2DPS TERMINATES THE JOB PERIODICALLY STARTED BY READACCS
036820,000095: # BY BRANCHING TO ENDOFJOB.
036821,000096:
036822,000097: # ON THE LAST PASS 2DPS PLACES THE SEMI-UNIT VECTOR ALONG THE NORMAL TO THE DESIRED ORBITAL PLANE,
036823,000098: # CPT6/2, IN THE REGISTER AXISD, CALLS FINDCDUD, AND BRANCHES TO LOCATION RETBURN IN THE MCP. THE MCP
036824,000099: # REMOVES 2DPS FROM THE READACCS, SERVICER, PGNCSMON LOOP AND ISSUES THE WAITLIST CALLS WHICH PRODUCE THE
036825,000100: # RANDOM THROTTLING. THE MCP DOES NOT CHANGE THE CONTENTS OF AXISD SUPPLIED BY 2DPS. CONSEQUENTLY THE
036826,000101: # THRUST ACCELERATION DURING RANDOM THROTTLING IS NORMAL TO THE ORBITAL PLANE.
036827,000102:
![]() |
Page 816 |
036829,000104: # INTERFACE SPECIFICATIONS -
036830,000105:
036831,000106: # SPECIFICATION PRE-IGNITION MODE THRUSTING MODE
036832,000107:
036833,000108: # CALLING SEQUENCE - DTCB TO PREBURN DTCB TO BURN
036834,000109: # (EBANK= E2DPS) (EBANK= E2DPS)
036835,000110:
036836,000111: # NORMAL EXITS - DTCB TO LOCATION PRIOR TO LAST PASS -
036837,000112: # RETPREB (EBANK= TC TO ENDOFJOB
036838,000113: # EMP11JOB) IN MISSION
036839,000114: # CONTROL PROGRAM. LAST PASS -
036840,000115: # DTCB TO LOCATION
036841,000116:
036842,000117: # RETBURN (EBANK=
036843,000118: # EMP11JOB) IN MISSION
036844,000119: # CONTROL PROGRAM
036845,000120:
036846,000121: # ALARM OR ABORT EXITS - NONE NONE
036847,000122:
036848,000123: # ERASABLE
036849,000124: # INITIALIZATION - CPT6/2 (IMU COORDS) 2BCADR OF BURN
036850,000125: # OTHER INITIALIZATION (EBANK= E2DPS) MUST
036851,000126: # DONE INTERNALLY BE IN AVGEXIT. OTHER
036852,000127: # INITIALIZATION DONE IN
036853,000128: # N PRE-
036854,000129:
036855,000130: # IGNITION MODE.
036856,000131:
036857,000132: # INPUTS - TET PIPTIME
036858,000133: # RIGNTION RN
036859,000134: # VIGNTION VN
036860,000135:
036861,000136: # OUTPUTS - PIPTIME AXISD
036862,000137: # RN /ACF/
036863,000138: # VN
036864,000139: # TULLG
036865,000140:
036866,000141: # POINTVSM
036867,000142:
036868,000143: # ERASABLES - AMEMORY THROUGH SAME
036869,000144: # AMEMORY +217 OCT
036870,000145: # PLUS 6 FOR CPT6/2 (NOT
036871,000146: # YET ASSIGNED)
036872,000147:
036873,000148: # SUBROUTINES CALLED - ROOTPSRS ROOTPSRS
036874,000149: # VPATCHER FINDCDUD
036875,000150: # CALCRVG THROTCON
036876,000151:
![]() |
Page 817 |
036878,000153: 22,2000 BANK 22
036879,000154: 22,2000 E4,1400 EBANK= E2DPS
036880,000155: # ************************************************************************
036881,000156: # INITIALIZATION OF SECOND DPS GUIDANCE - PREBURN
036882,000157: # ************************************************************************
036883,000158:
036884,000159: 22,2000 22,2000 PREBURN = INIT2DPS
036885,000160: 22,2000 03373 INIT2DPS TC PRETINIT # INITIALIZES INTERPRETER
036886,000161:
036887,000162:
036888,000163: # CLEAR ORBITAL INTEGRATION VARIABLES FROM REGISTERS IN COMMON WITH 2DPS
036889,000164:
036890,000165: 22,2001 06103 TC INTPRET
036891,000166: 22,2002 77745 DLOAD
036892,000167: 22,2003 02047 TET # EXTRAPOLATED TIME FROM ORBITAL INTEGRATN
036893,000168: 22,2004 35321 STCALL PIPTIME # TIME REGISTER OF PIPASR
036894,000169: 22,2005 60347 VPATCHER # TRANSFERS RIGNTION, VIGNTION TO RN, VN,
036895,000170: 22,2006 77776 EXIT # AND DUPLICATES FUNCTIONS OF NORMLIZE
036896,000171: 22,2007 04147 TC PHASCHNG # PREVENTS REREADING ORBITAL INTEGRATION
036897,000172:
036898,000173: 22,2010 04022 +402 OCT 04022 # VARIABLES AFTER WRITING OVER THEM
036899,000174:
036900,000175: # COMMON REGISTERS ARE CLEARED
036901,000176:
036902,000177: 22,2011 06103 TC INTPRET
036903,000178: 22,2012 77745 DLOAD
036904,000179: 22,2013 05547 IGNALGL
036905,000180: 22,2014 25073 STOVL AVGEXIT # SET UP RETURN ADDRESS IN AVGEXIT
036906,000181: 22,2015 05562 ZEROPOS
036907,000182: 22,2016 02213 STORE GDOTM1 # DERIVATIVE OF G FOR USE BY IGNITN1
036908,000183: 22,2017 16171 STODL UNAFC/2
036909,000184: 22,2020 05562 ZEROPOS
036910,000185:
036911,000186: 22,2021 02055 STORE TTF/4TMP # ZERO AS IF COMING FROM PREVIOUS PHASE
036912,000187: 22,2022 77776 EXIT
036913,000188: 22,2023 33561 CA ZEROPOS
036914,000189: 22,2024 55402 TS FLPASS0 # SHOWS THIS IS INITIAL PASS THIS PHASE
036915,000190: 22,2025 03205 TC XTRTPIP # SETS TPIP EXTRAPOLATED
036916,000191: 22,2026 37735 CA POSMAX
036917,000192: 22,2027 55564 TS /AFC/ # FORCES INITIALIZATION OF COUNTFC
036918,000193: 22,2030 55565 TS /AFC/ +1 # ONLY REASON: TO ASSURE GOOD PARITY
036919,000194: 22,2031 55404 TS COUNTFCT # ONLY REASON: TO ASSURE GOOD PARITY
036920,000195: 22,2032 01072 TC AVGEXIT # RETURNS TO APPROPRIATE LOCATION IN 2DPS
036921,000196:
![]() |
Page 818 |
036923,000198: # ************************************************************************
036924,000199: # SECOND DPS FLITE SEQUENCE TABLE
036925,000200: # ************************************************************************
036926,000201:
036927,000202: # INDIRECT ADDRESSES
036928,000203:
036929,000204: 22,2033 22,2041 BURN = QUAD0X
036930,000205: 22,2033 BRTTFNU = 1
036931,000206: 22,2033 PARL = 2
036932,000207: 22,2033 TBRL = 3
036933,000208: 22,2033 TTF/4CR = 4
036934,000209: 22,2033 BRXEND = 5
036935,000210:
036936,000211: 22,2033 12210 IGNALG TCF TTFINCR
036937,000212: 22,2034 12172 TCF ADTTFNU # AS IF COMING FROM PREVIOUS PHASE
036938,000213: 22,2035 00000 OCT 00000
036939,000214: 22,2036 02113 ADRES TBRIGAL
036940,000215: 22,2037 77664 DEC -1.5 E2 B-15 # -1.5 SECONDS, TTF UNITS, COMPARES TTF/4
036941,000216: 22,2040 12645 TCF EXIGEND
036942,000217:
036943,000218: 22,2041 12210 QUAD0X TCF TTFINCR
036944,000219: 22,2042 12207 TCF RETTTFNU # AS IF CONTINUING PREBURN PHASE
036945,000220: 22,2043 00000 OCT 00000
036946,000221:
036947,000222: 22,2044 02117 ADRES TBRQUAD
036948,000223: 22,2045 73465 DEC -045 E2 B-15 # -045 SECONDS, TTF UNITS, COMPARES TTF/4
036949,000224: 22,2046 12721 TCF EXQDLIN
036950,000225:
036951,000226: 22,2047 12210 QUAD0F TCF TTFINCR
036952,000227: 22,2050 12172 TCF ADTTFNU
036953,000228: 22,2051 00027 OCT 00027
036954,000229: 22,2052 02117 ADRES TBRQUAD
036955,000230: 22,2053 77551 DEC -3.0 E2 B-15 # -3.0 SECONDS, TTF UNITS, COMPARES TTF/4
036956,000231: 22,2054 12721 TCF EXQDLIN
036957,000232:
036958,000233: 22,2055 13140 LING0F TCF LSETEVN
036959,000234:
036960,000235: 22,2056 12207 TCF RETTTFNU
036961,000236: 22,2057 00027 OCT 00027
036962,000237: 22,2060 02123 ADRES TBRLING
036963,000238: 22,2061 77746 DEC -.50 E2 B-15 # -.50 SECONDS, TTF UNITS, COMPARES TTF/4
036964,000239: 22,2062 12721 TCF EXQDLIN
036965,000240:
036966,000241: 22,2063 13155 LING1F TCF LSETODD
036967,000242: 22,2064 12172 TCF ADTTFNU
036968,000243: 22,2065 00056 OCT 00056
036969,000244: 22,2066 02123 ADRES TBRLING
036970,000245:
036971,000246: 22,2067 77746 DEC -.50 E2 B-15 # -.50 SECONDS, TTF UNITS, COMPARES TTF/4
036972,000247: 22,2070 12721 TCF EXQDLIN
036973,000248:
036974,000249: 22,2071 12210 QUAD2F TCF TTFINCR
036975,000250: 22,2072 12172 TCF ADTTFNU
036976,000251:
![]() |
Page 819 |
036978,000253: 22,2073 00065 OCT 00065
036979,000254: 22,2074 02117 ADRES TBRQUAD
036980,000255: 22,2075 77551 DEC -3.0 E2 B-15 # -3.0 SECONDS, TTF UNITS, COMPARES TTF/4
036981,000256: 22,2076 12721 TCF EXQDLIN
036982,000257:
036983,000258: 22,2077 13140 LING2F TCF LSETEVN
036984,000259:
036985,000260: 22,2100 12207 TCF RETTTFNU
036986,000261: 22,2101 00065 OCT 00065
036987,000262: 22,2102 02123 ADRES TBRLING
036988,000263: 22,2103 77746 DEC -.50 E2 B-15 # -.50 SECONDS, TTF UNITS, COMPARES TTF/4
036989,000264: 22,2104 12721 TCF EXQDLIN
036990,000265:
036991,000266: 22,2105 13155 LING3F TCF LSETODD
036992,000267: 22,2106 12172 TCF ADTTFNU
036993,000268: 22,2107 00114 OCT 00114
036994,000269: 22,2110 02123 ADRES TBRLING
![]() |
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. |
036998,000273: 22,2111 77763 OCT 77763 # -.25 SECONDS, TTF UNITS, COMPARES TTF/4
036999,000274: 22,2112 12733 TCF EXFINAL
037000,000275:
037001,000276:
037002,000277:
037003,000278:
037004,000279: # ************************************************************************
037005,000280: # SECOND DPS ROAD MAPS (BRANCH TABLES)
037006,000281: # ************************************************************************
037007,000282:
037008,000283: # INDIRECT ADDRESSES
037009,000284:
037010,000285: 22,2113 BRIGN1 = 0
037011,000286:
037012,000287: 22,2113 BRLING = 1
037013,000288: 22,2113 BRIGN2 = 2
037014,000289: 22,2113 BRXMID = 3
037015,000290:
037016,000291: 22,2113 12750 TBRIGAL TCF IGNITN1
037017,000292: 22,2114 12413 TCF TTF/4CL
037018,000293: 22,2115 13041 TCF IGNITN2
037019,000294: 22,2116 12615 TCF EXIGMID
037020,000295:
037021,000296: 22,2117 12164 TBRQUAD TCF RETIGN1
037022,000297: 22,2120 12413 TCF TTF/4CL
037023,000298: 22,2121 12571 TCF RETIGN2
037024,000299:
037025,000300: 22,2122 12721 TCF EXQDLIN
037026,000301:
037027,000302: 22,2123 12164 TBRLING TCF RETIGN1
037028,000303: 22,2124 13171 TCF LINGUID
037029,000304: 22,2125 12571 TCF RETIGN2
037030,000305: 22,2126 12721 TCF EXQDLIN
037031,000306:
![]() |
Page 820 |
037033,000308: # ************************************************************************
037034,000309: # INITIALIZATION FOR EACH PASS
037035,000310: # ************************************************************************
037036,000311:
037037,000312: # NTLZPASS SETS INDICES, FILLS TPIPOLD, TPIP, R, V EVERY PASS; BRANCHES TO IGNITN1, ADTTFNU WHEN APPROPRIATE.
037038,000313:
037039,000314: 22,2127 00006 NTLZPASS EXTEND
037040,000315: 22,2130 23406 QXCH RETNTLZ
037041,000316:
037042,000317: 22,2131 03373 TC PRETINIT # INITIALIZES INTERPRETER
037043,000318: # SET INDICES
037044,000319:
037045,000320: 22,2132 00006 EXTEND
037046,000321: 22,2133 51072 INDEX AVGEXIT
037047,000322: 22,2134 30003 DCA PARL # LOADS ADRESES OF PARMTR AND BRANCH TABLS
037048,000323: 22,2135 53401 DXCH NDX2DPS
037049,000324: 22,2136 00006 EXTEND
037050,000325: 22,2137 41401 DCS NDX2DPS
037051,000326: 22,2140 50110 INDEX FIXLOC
037052,000327: 22,2141 52047 DXCH X1 # LOADS BOTH INTRP NDX REGS, NEEDED OR NOT
037053,000328:
037054,000329: # FILL TPIPOLD AND TPIP
037055,000330:
037056,000331: 22,2142 00006 EXTEND
037057,000332: 22,2143 31447 DCA TPIP
037058,000333:
037059,000334: 22,2144 53451 DXCH TPIPOLD
037060,000335: 22,2145 04147 TC PHASCHNG # PROTECT TPIPOLD AND
037061,000336: 22,2146 04022 +402 OCT 04022 # PREVENT RETURNING TO PREVIOUS PROGRAM
037062,000337: 22,2147 00006 EXTEND
037063,000338: 22,2150 31321 DCA PIPTIME
037064,000339: 22,2151 53447 DXCH TPIP
037065,000340:
037066,000341: # FILL R AND V
037067,000342:
037068,000343: 22,2152 06103 TC INTPRET
037069,000344:
037070,000345: 22,2153 77775 VLOAD
037071,000346: 22,2154 01011 RN
037072,000347: 22,2155 26061 STOVL R # RN TO R WITHOUT RESCALING
037073,000348: 22,2156 01017 VN
037074,000349: 22,2157 77742 VSR2
037075,000350: 22,2160 02071 STORE V # VN TO V WITH SCALING ADJUSTMENT
037076,000351: 22,2161 77776 EXIT
037077,000352:
037078,000353: # IGNITN1 AND ADTTFNU BRANCH DECISIONS
037079,000354:
037080,000355: 22,2162 51401 INDEX NDXBR
037081,000356: 22,2163 10000 TCF BRIGN1 # TO IGNITN1 WHEN APPROPRIATE
037082,000357:
037083,000358: 22,2164 04147 RETIGN1 TC PHASCHNG # RETURN HERE WHETHER OR NOT DO IGNITN1.
037084,000359: 22,2165 04022 +402 OCT 04022 # PROTECT TTF/4TMP AS USED BY IGNITN1 FROM
037085,000360:
![]() |
Page 821 |
037087,000362: # WIPEOUT BY ADTTFNU AND TTFINCR. ALSO
037088,000363: # PROTECT RTEMP, VTEMP FROM RS, VS (SHARE)
037089,000364:
037090,000365: 22,2166 11402 CCS FLPASS0
037091,000366: 22,2167 12211 TCF TTFINCR +1 # ON OTHER THAN FIRST PASS IN ANY PHASE.
037092,000367: 22,2170 51072 INDEX AVGEXIT
037093,000368: 22,2171 10001 TCF BRTTFNU # TO ADTTFNU WHEN APPROPRIATE
037094,000369:
037095,000370:
037096,000371: # ADD TTF/4NU TO TTF/4 FROM LAST PASS
037097,000372:
037098,000373: 22,2172 00006 ADTTFNU EXTEND
037099,000374: 22,2173 31453 DCA TTF/4
037100,000375: 22,2174 53455 DXCH TTF/4TMP
037101,000376: 22,2175 51400 INDEX NDX2DPS
037102,000377: 22,2176 33422 CA TTF/4NU
037103,000378: 22,2177 27454 ADS TTF/4TMP
037104,000379: 22,2200 04147 TC PHASCHNG # PROTECT TTF/4
037105,000380: 22,2201 04022 +402 OCT 04022
037106,000381:
037107,000382: 22,2202 00006 EXTEND
037108,000383: 22,2203 31455 DCA TTF/4TMP
037109,000384: 22,2204 53453 DXCH TTF/4 # RENEWED TTF/4
037110,000385:
037111,000386: 22,2205 04147 TC PHASCHNG # PROTECT TTF/4TMP FROM WIPEOUT BY TTFINCR
037112,000387: 22,2206 04022 +402 OCT 04022
037113,000388: 22,2207 01406 RETTTFNU TC RETNTLZ
037114,000389:
037115,000390:
037116,000391:
037117,000392: # ************************************************************************
037118,000393: # INCREMENT TTF/4
037119,000394:
037120,000395: # ************************************************************************
037121,000396:
037122,000397: 22,2210 02127 TTFINCR TC NTLZPASS
037123,000398: 22,2211 00006 +1 EXTEND
037124,000399: 22,2212 41451 DCS TPIPOLD
037125,000400: 22,2213 52145 DXCH MPAC
037126,000401: 22,2214 00006 EXTEND
037127,000402: 22,2215 31447 DCA TPIP
037128,000403: 22,2216 20145 DAS MPAC
037129,000404: 22,2217 37742 CA TSCALE
037130,000405:
037131,000406: 22,2220 07367 TC DMPNSUB # (TPIP-TPIPOLD)/4 TO MPAC, TTF UNITS
037132,000407:
037133,000408: 22,2221 00006 EXTEND
037134,000409: 22,2222 31453 DCA TTF/4
037135,000410: 22,2223 20145 DAS MPAC # YIELDS INCREMENTED TTF/4 IN MPAC
037136,000411: 22,2224 52145 DXCH MPAC
037137,000412: 22,2225 53455 DXCH TTF/4TMP
037138,000413: 22,2226 04147 TC PHASCHNG # PROTECT TTF/4
037139,000414: 22,2227 04022 +402 OCT 04022
037140,000415: 22,2230 00006 EXTEND
037141,000416:
![]() |
Page 822 |
037143,000418: 22,2231 31455 DCA TTF/4TMP
037144,000419:
037145,000420: 22,2232 53453 DXCH TTF/4 # INCREMENTED TTF/4
037146,000421:
037147,000422:
037148,000423:
037149,000424: # ************************************************************************
037150,000425: # SET UP STATE IN LOCAL, PLANE, SPHERICAL COORDINATES
037151,000426: # ************************************************************************
037152,000427:
037153,000428: 22,2233 06103 STUP2DPS TC INTPRET
037154,000429: 22,2234 53575 VLOAD UNIT
037155,000430: 22,2235 02061 R
037156,000431: 22,2236 26012 STOVL CLT/2 # DEFINITION OF MATRIX CLT/2
037157,000432:
037158,000433: 22,2237 02357 CPT6/2
037159,000434: 22,2240 53435 VXV UNIT
037160,000435: 22,2241 02012 CLT/2
037161,000436: 22,2242 26020 STOVL CLT/2 +6
037162,000437: 22,2243 02012 CLT/2
037163,000438: 22,2244 76435 VXV VSL1
037164,000439: 22,2245 02020 CLT/2 +6
037165,000440: 22,2246 26026 STOVL CLT/2 +14
037166,000441: 22,2247 02071 V
037167,000442: 22,2250 76521 MXV VSL1
037168,000443:
037169,000444: 22,2251 02012 CLT/2 # - * -
037170,000445: 22,2252 26077 STOVL VL # VL = 2 CLT/2 V
037171,000446: 22,2253 02061 R
037172,000447: 22,2254 72441 DOT SL1
037173,000448: 22,2255 02357 CPT6/2 # - -
037174,000449: 22,2256 26105 STOVL RP2 # RP2 = 2 R.CPT6/2
037175,000450: 22,2257 02061 R
037176,000451: 22,2260 50235 VXV DOT
037177,000452: 22,2261 02071 V
037178,000453: 22,2262 02357 CPT6/2
037179,000454: 22,2263 77752 SL1 # - - -
037180,000455: 22,2264 26107 STOVL MAP2 # MAP2 = 2 R*V.CPT6/2
037181,000456:
037182,000457: 22,2265 02061 R
037183,000458: 22,2266 77646 ABVAL # -
037184,000459: 22,2267 16067 STODL RLENGTH # RLENGTH = ABVAL(R)
037185,000460: 22,2270 02105 RP2
037186,000461: 22,2271 65316 DSQ PDDL
037187,000462: 22,2272 02067 RLENGTH
037188,000463: 22,2273 45316 DSQ DSU
037189,000464: 22,2274 77766 SQRT # 2 2
037190,000465: 22,2275 16111 STODL RC # RC = SQRT(RLENGTH -RP2 )
037191,000466: 22,2276 02067 RLENGTH # -
037192,000467:
037193,000468: 22,2277 16113 STODL RS # DEFINITION OF RS, FIRST COMPONENT
037194,000469: 22,2300 02111 RC
037195,000470: 22,2301 77671 DDV
037196,000471: 22,2302 02067 RLENGTH
037197,000472: 22,2303 16127 STODL CRS2 # COSINE (RS2) = RC/RLENGTH
037198,000473:
![]() |
Page 823 |
037200,000475: 22,2304 02105 RP2
037201,000476: 22,2305 77671 DDV
037202,000477: 22,2306 02067 RLENGTH
037203,000478: 22,2307 16131 STODL SRS2 # SINE (RS2) = RP2/RLENGTH
037204,000479: 22,2310 02105 RP2
037205,000480: 22,2311 77671 DDV
037206,000481:
037207,000482: 22,2312 02111 RC
037208,000483: 22,2313 16133 STODL TRS2 # TANGENT (RS2) = RP2/RC
037209,000484: 22,2314 02131 SRS2
037210,000485: 22,2315 67542 SR1 ARCSIN
037211,000486: 22,2316 52405 DMP SL3
037212,000487: 22,2317 05600 PI/4 # -
037213,000488: 22,2320 16117 STODL RS +4 # DEFINITION OF RS, THIRD COMPONENT
037214,000489: 22,2321 02103 VL +4
037215,000490: 22,2322 65271 DDV PDDL # THIS PUSH DOWN IS FOR 3RD COMP OF VS.
037216,000491: 22,2323 02067 RLENGTH
037217,000492: 22,2324 02101 VL +2
037218,000493: 22,2325 65271 DDV PDDL # THIS PUSH DOWN IS FOR 2ND COMP OF VS.
037219,000494:
037220,000495: 22,2326 02111 RC
037221,000496: 22,2327 02077 VL
037222,000497: 22,2330 77666 VDEF # DEFINITION OF SPHERICAL VELOCITY VECTOR
037223,000498: 22,2331 16121 STODL VS
037224,000499: 22,2332 02123 VS +2
037225,000500: 22,2333 77716 DSQ
037226,000501: 22,2334 41205 DMP DMP
037227,000502: 22,2335 02131 SRS2
037228,000503: 22,2336 02127 CRS2
037229,000504: 22,2337 41325 PDDL DMP
037230,000505:
037231,000506: 22,2340 02125 VS +4
037232,000507: 22,2341 02121 VS
037233,000508: 22,2342 72471 DDV SL1
037234,000509: 22,2343 02067 RLENGTH
037235,000510: 22,2344 57415 DAD DCOMP
037236,000511: 22,2345 41325 PDDL DMP # THIS PUSH DOWN IS FOR 3RD COMP OF ASPRT.
037237,000512: 22,2346 02123 VS +2
037238,000513: 22,2347 02121 VS
037239,000514: 22,2350 77671 DDV
037240,000515: 22,2351 02067 RLENGTH
037241,000516: 22,2352 41325 PDDL DMP
037242,000517: 22,2353 02133 TRS2
037243,000518:
037244,000519: 22,2354 02125 VS +4
037245,000520: 22,2355 77605 DMP
037246,000521: 22,2356 02123 VS +2
037247,000522: 22,2357 72425 DSU SL1
037248,000523: 22,2360 63525 PDDL DSQ # THIS PUSH DOWN IS FOR 2ND COMP OF ASPRT.
037249,000524: 22,2361 02067 RLENGTH
037250,000525: 22,2362 77665 BDDV
037251,000526: 22,2363 21143 MUEARTH
037252,000527: 22,2364 63525 PDDL DSQ
037253,000528: 22,2365 02125 VS +4
037254,000529:
![]() |
Page 824 |
037256,000531: 22,2366 77605 DMP # -
037257,000532: 22,2367 02067 RLENGTH # THIS MONSTER ASPRT REPRESENTS
037258,000533:
037259,000534: 22,2370 63525 PDDL DSQ # INCIDENTAL ACCELERATIONS; DUE
037260,000535: 22,2371 02127 CRS2 # TO GRAVITY, CORIOLIS FORCES,
037261,000536: 22,2372 63525 PDDL DSQ # AND SO FORTH.
037262,000537: 22,2373 02123 VS +2
037263,000538: 22,2374 41205 DMP DMP
037264,000539: 22,2375 02067 RLENGTH
037265,000540: 22,2376 45215 DAD DSU
037266,000541: 22,2377 77666 VDEF # DEFINITION OF ASPRT
037267,000542: 22,2400 02135 STORE ASPRT
037268,000543: 22,2401 77776 EXIT
037269,000544:
037270,000545: 22,2402 37761 CA ZERO # SECOND COMPONENTS
037271,000546: 22,2403 55514 TS RS +2 # OF RS AND VS ARE
037272,000547: 22,2404 55515 TS RS +3 # ZEROED HERE TO PREVENT
037273,000548: 22,2405 55522 TS VS +2 # OVERFLOW TROUBLE IN
037274,000549: 22,2406 55523 TS VS +3 # THE ACS EQUATION.
037275,000550: 22,2407 04147 TC PHASCHNG # TIME ONLY?
037276,000551: 22,2410 04022 +402 OCT 04022
037277,000552: 22,2411 51401 INDEX NDXBR
037278,000553: 22,2412 10001 TCF BRLING # POSSIBLE BRANCH TO LINEAR GUIDANCE
037279,000554:
![]() |
Page 825 |
037281,000556: # ************************************************************************
037282,000557: # TTF/4 COMPUTATION
037283,000558: # ************************************************************************
037284,000559:
037285,000560: 22,2413 00006 TTF/4CL EXTEND
037286,000561: 22,2414 51400 INDEX NDX2DPS
037287,000562: 22,2415 33446 DCA JDS2
037288,000563: 22,2416 53442 DXCH TABLTTF +6 # A(3) = JDS2 TO TABLTTF
037289,000564:
037290,000565: 22,2417 00006 EXTEND
037291,000566: 22,2420 51400 INDEX NDX2DPS
037292,000567: 22,2421 33430 DCA ADS +4
037293,000568: 22,2422 20001 DDOUBL
037294,000569: 22,2423 52145 DXCH MPAC
037295,000570: 22,2424 33576 CA SP3/4
037296,000571: 22,2425 07351 TC SHORTMP # LEAVING A(2) IN MPAC
037297,000572: 22,2426 52145 DXCH MPAC
037298,000573: 22,2427 53440 DXCH TABLTTF +4 # A(2) = (6 ADS2)/4 TO TABLTTF
037299,000574: 22,2430 37746 CA BIT8
037300,000575:
037301,000576: 22,2431 55443 TS TABLTTF +10 # FRACTIONAL PRECISION FOR TTF TO TABLE
037302,000577: 22,2432 00006 EXTEND
037303,000578: 22,2433 31525 DCA VS +4
037304,000579: 22,2434 52145 DXCH MPAC
037305,000580: 22,2435 33572 CA SP3/8
037306,000581: 22,2436 07351 TC SHORTMP # YIELDS 6/16 VS2 IN MPAC
037307,000582: 22,2437 00006 EXTEND
037308,000583: 22,2440 51400 INDEX NDX2DPS
037309,000584: 22,2441 33444 DCA VDS +4
037310,000585: 22,2442 20001 DDOUBL
037311,000586: 22,2443 52145 DXCH MPAC
037312,000587: 22,2444 53436 DXCH TABLTTF +2 # STORE 6/16 VS2 IN TABLTTF
037313,000588:
037314,000589: 22,2445 33573 CA SP9/16
037315,000590: 22,2446 07351 TC SHORTMP # YIELDS 18/16 VDS2 IN MPAC
037316,000591: 22,2447 00006 EXTEND
037317,000592: 22,2450 41517 DCS RS +4
037318,000593: 22,2451 52145 DXCH MPAC # -RS2 TO MPAC, FETCHING 18/16 VDS2
037319,000594: 22,2452 21436 DAS TABLTTF +2 # A(1) = (6 VS2+18 VDS2)/16
037320,000595:
037321,000596: 22,2453 00006 EXTEND
037322,000597: 22,2454 51400 INDEX NDX2DPS
037323,000598: 22,2455 33436 DCA RDS +4
037324,000599:
037325,000600: 22,2456 20145 DAS MPAC # YIELDS -RS2+RDS2 IN MPAC
037326,000601: 22,2457 33572 CA SP3/8
037327,000602: 22,2460 07351 TC SHORTMP
037328,000603: 22,2461 00006 EXTEND
037329,000604: 22,2462 30145 DCA MPAC
037330,000605: 22,2463 53434 DXCH TABLTTF # A(0) =-24(RS2-RDS2)/64
037331,000606:
037332,000607: 22,2464 00004 INHINT # SET INHIBITED LOOP TO STORE FOR DWNLINK
037333,000608: 22,2465 37756 CAF ELEVEN # INITIALIZE INDEX TO DEC 11
037334,000609: 22,2466 54070 RVSTOR TS RUPTREG1
037335,000610:
![]() |
Page 826 |
037337,000612: 22,2467 50070 INDEX RUPTREG1
037338,000613:
037339,000614: 22,2470 31050 CA RN1
037340,000615: 22,2471 50070 INDEX RUPTREG1
037341,000616: 22,2472 55010 TS RN # STORE UPDATED RN, VN
037342,000617: 22,2473 10070 CCS RUPTREG1
037343,000618: 22,2474 12466 TCF RVSTOR
037344,000619: 22,2475 00006 EXTEND
037345,000620: 22,2476 31445 DCA PIPTIMET
037346,000621: 22,2477 53321 DXCH PIPTIME # UPDATED PIPTIME
037347,000622: 22,2500 00006 EXTEND
037348,000623: 22,2501 31321 DCA PIPTIME
037349,000624: 22,2502 53341 DXCH STATIME # STATE TIME FOR DWNLINK
037350,000625: 22,2503 00003 RELINT
037351,000626:
037352,000627: 22,2504 04147 TC PHASCHNG # TIME ONLY?
037353,000628: 22,2505 04022 +402 OCT 04022
037354,000629:
037355,000630:
037356,000631:
037357,000632: # ************************************************************************
037358,000633: # QUADRATIC GUIDANCE - SPHERICAL ACCELERATION AS QUADRATIC TIME FUNCTION
037359,000634: # ************************************************************************
037360,000635:
037361,000636: # -
037362,000637: # ACS EQUATION IS PROGRAMMED LIKE THIS:
037363,000638: # - -
037364,000639: # - - 1/2(RS-RDS)
037365,000640: # (VS+VDS) - -----------
037366,000641: # - TTF/4 -
037367,000642: # ACS = ---------------------- + ADS
037368,000643: # 2/3(TTF/4)
037369,000644:
037370,000645: 22,2506 06103 TC INTPRET
037371,000646: 22,2507 41345 DLOAD DMP
037372,000647: 22,2510 02053 TTF/4
037373,000648: 22,2511 05575 2DPS2/3
037374,000649:
037375,000650: 22,2512 51715 PDVL VSU*
037376,000651: 22,2513 02113 RS
037377,000652: 22,2514 05432 RDS,1
037378,000653: 22,2515 70362 VSR1 V/SC
037379,000654: 22,2516 02053 TTF/4
037380,000655: 22,2517 52715 PDVL VAD*
037381,000656: 22,2520 02121 VS
037382,000657: 22,2521 05440 VDS,1
037383,000658: 22,2522 70251 VSU V/SC
037384,000659: 22,2523 77653 VAD*
037385,000660: 22,2524 05424 ADS,1
037386,000661: 22,2525 02143 STORE ACS # BEHOLD, UNWORTHY MORTAL
037387,000662: 22,2526 77651 VSU
037388,000663: 22,2527 02135 ASPRT # - - -
037389,000664: 22,2530 16151 STODL AFCS # AFCS = ACS - ASPRT
037390,000665:
![]() |
Page 827 |
037392,000667: 22,2531 02111 RC
037393,000668: 22,2532 41316 DSQ DMP
037394,000669: 22,2533 02053 TTF/4
037395,000670: 22,2534 45325 PDDL DSU
037396,000671: 22,2535 02107 MAP2
037397,000672: 22,2536 05450 MADP2
037398,000673:
037399,000674: 22,2537 77702 SR2
037400,000675: 22,2540 45471 DDV STADR # 2
037401,000676: 22,2541 61624 STODL AFCS +2 # AFCS = 1/4(MAP -MADP )/RC (TTF/4)
037402,000677: 22,2542 02155 AFCS +4 # 1 2 2
037403,000678:
037404,000679:
037405,000680:
037406,000681: # ************************************************************************
037407,000682: # THRUST ACCEL POINTING AND MAGNITUDE COMMANDS - DUE TO QUAD OR LINR GUID
037408,000683: # ************************************************************************
037409,000684:
037410,000685: 22,2543 65205 AFCCALC DMP PDDL # COMES HERE FROM LINGUID.
037411,000686:
037412,000687: 22,2544 02067 RLENGTH
037413,000688: 22,2545 02153 AFCS +2
037414,000689: 22,2546 65205 DMP PDDL
037415,000690: 22,2547 02111 RC
037416,000691: 22,2550 02151 AFCS
037417,000692: 22,2551 61266 VDEF VXM
037418,000693: 22,2552 02012 CLT/2
037419,000694: 22,2553 77772 VSL1 # - *
037420,000695: 22,2554 02157 STORE AFC # AFC = 2(AFCS , RC AFCS ,RLENGTH AFCS )CLT/2
037421,000696: 22,2555 77656 UNIT # 0 1 2
037422,000697:
037423,000698: 22,2556 16171 STODL UNAFC/2
037424,000699: 22,2557 00045 36D # MAGNITUDE OF AFC, /AFC/
037425,000700: 22,2560 02165 STORE /AFC/ # FOR IGNITION ALGORITHM
037426,000701: 22,2561 77762 SR1R # CONVERTS /AFC/ TO THROTCON UNITS, /ACF/
037427,000702: 22,2562 01335 STORE /ACF/ # FOR THROTTLE CONTROL SUBR THROTCON
037428,000703: 22,2563 77776 EXIT
037429,000704: 22,2564 51401 INDEX NDXBR
037430,000705: 22,2565 10002 TCF BRIGN2
037431,000706:
037432,000707: 22,2566 54111 -3 TS OVFIND # RETURN FROM TTF/4 OVERFLOW
037433,000708: 22,2567 37760 -2 CA FIVE # RETURN RESETTING COUNTFC
037434,000709: 22,2570 55404 -1 TS COUNTFCT # RETURN DECREMENTING COUNTFC
037435,000710:
037436,000711: 22,2571 04147 RETIGN2 TC PHASCHNG # RETURN (NORMAL) FROM IGNITN2
037437,000712: 22,2572 04022 +402 OCT 04022 # PREVENT GOING FAR BACK IN 2DPS AFTR EXIT
037438,000713:
037439,000714:
037440,000715:
037441,000716: # ************************************************************************
037442,000717: # PREPARE TO EXIT
037443,000718: # ************************************************************************
037444,000719:
037445,000720: 22,2573 25402 INCR FLPASS0 # INCR FIRST PASS FLAG. REPEATS ARE OK.
037446,000721:
![]() |
Page 828 |
037448,000723: 22,2574 51072 INDEX AVGEXIT
037449,000724: 22,2575 40004 CS TTF/4CR
037450,000725:
037451,000726: 22,2576 61452 AD TTF/4
037452,000727: 22,2577 00006 EXTEND
037453,000728: 22,2600 51401 INDEX NDXBR
037454,000729: 22,2601 60003 BZMF BRXMID # CONTINUE PRESENT PHASE
037455,000730:
037456,000731: 22,2602 31072 CA AVGEXIT # PREPARE FOR NEW PHASE
037457,000732: 22,2603 55405 TS AVGXTEMP # TEMPORARY PROTECTION FOR AVGEXIT
037458,000733: 22,2604 04147 TC PHASCHNG # PROTECT AVGEXIT
037459,000734: 22,2605 04022 +402 OCT 04022
037460,000735: 22,2606 31405 CA AVGXTEMP
037461,000736:
037462,000737: 22,2607 66276 AD SIX
037463,000738: 22,2610 55072 TS AVGEXIT
037464,000739: 22,2611 37761 CA ZERO
037465,000740: 22,2612 55402 TS FLPASS0 # RESET FLAG INDICATING PASS ZERO (FIRST)
037466,000741: 22,2613 51405 INDEX AVGXTEMP
037467,000742: 22,2614 10005 TCF BRXEND
037468,000743:
![]() |
Page 829 |
037470,000745: # ************************************************************************
037471,000746: # ROUTINES FOR EXITING FROM SECOND DPS GUIDANCE. THESE ARE:
037472,000747: # ************************************************************************
037473,000748:
037474,000749: # 1. EXIGMID CALLS CALCRVG AS AN INTERPRETIVE SUBROUTINE UP UNTIL BUT NOT INCLUDING THE LAST PASS DURING
037475,000750: # THE PREBURN PHASE. UPON RETURN EXIGMID RESTARTS 2DPS.
037476,000751:
037477,000752: # 2. EXIGEND IS USED ON THE LAST PASS DURING PREBURN. IT SETS UP FOR KALCMANU, FOR THE SUBSEQUENT 2DPS
037478,000753:
037479,000754: # BURN, AND EXITS TO THE MISSION CONTROL PROGRAM.
037480,000755:
037481,000756: # 3. EXQDLIN IS USED TO TERMINATE EACH PASS UP UNTIL BUT NOT INCLUDING THE LAST PASS ON ALL 2DPS BURN
037482,000757: # PHASES. EXQDLIN OBTAINS ATTITUDE AND THROTTLE CONTROL AND TERMINATES THE JOB.
037483,000758:
037484,000759: # 4. EXFINAL IS THE FINAL 2DPS EXIT. IT SETS UP THE ATTITUDE COMMAND FOR RANDOM THROTTLING, OBTAINS
037485,000760: # ATTITUDE AND THROTTLE CONTROL, AND EXITS TO THE MISSION CONTROL PROGRAM.
037486,000761:
037487,000762:
037488,000763:
037489,000764: # EXIGMID SETS UP FOR CALCRVG TO MOVE STATE FORWARD A SPECIFIED TIME, INITIALIZES THE INTERPRETER, CALLS CALCRVG
037490,000765: # AS AN INTERPRETIVE SUBROUTINE, AND UPON RETURN SETS UP FOR IGNALG AND BRANCHES INDIRECTLY THERETO.
037491,000766:
037492,000767: 22,2615 03373 EXIGMID TC PRETINIT # INITIALIZES INTERPRETER FOR CALCRVG
037493,000768: # SUCCEEDING CODING MUST NOT UNDO
037494,000769:
037495,000770: 22,2616 06103 TC INTPRET
037496,000771: 22,2617 43345 DLOAD DAD
037497,000772: 22,2620 05567 PIGNALG
037498,000773: 22,2621 01321 PIPTIME
037499,000774: 22,2622 26045 STOVL PIPTIMET # UPDATED PIPTIME TEMPORARY STORAGE
037500,000775: 22,2623 05562 ZEROPOS
037501,000776: 22,2624 34404 STCALL DELV # DELV = 0
037502,000777:
037503,000778: 22,2625 61077 CALCRVG # STEPS FORWARD IN TIME LEAVING RN1, VN1
037504,000779: 22,2626 77776 EXIT
037505,000780:
037506,000781: 22,2627 33545 CA E2DPSL # ASSURE CORRECT EBANK BEFORE
037507,000782: 22,2630 54003 TS EBANK # DOING PHASCHNG
037508,000783: 22,2631 04147 TC PHASCHNG # PROTECT PIPTIME. PREVENT REDOING CALCRVG
037509,000784: 22,2632 04022 +402 OCT 04022
037510,000785: 22,2633 06103 TC INTPRET
037511,000786: 22,2634 77745 DLOAD
037512,000787: 22,2635 02045 PIPTIMET
037513,000788:
037514,000789: 22,2636 25321 STOVL PIPTIME # UPDATED PIPTIME
037515,000790: 22,2637 01051 RN1
037516,000791: 22,2640 25011 STOVL RN # UPDATED POSITION
037517,000792: 22,2641 01057 VN1
037518,000793: 22,2642 01017 STORE VN # UPDATED VELOCITY
037519,000794: 22,2643 77776 EXIT
037520,000795: 22,2644 01072 TC AVGEXIT # RETURNS TO APPROPRIATE LOCATION IN 2DPS.
037521,000796:
![]() |
Page 830 |
037523,000798:
037524,000799: # EXIGEND EXTRAPOLATES UNAFC/2 TO TTF/4 = 0, SETS UP FOR MISSION CONTROL PROGRAM, SETS UP FOR THE SUCCEEDING
037525,000800:
037526,000801: # BRAKING PHASE, AND EXITS TO THE MISSION CONTROL PROGRAM.
037527,000802:
037528,000803: # EXTRAPOLATE UNAFC/2
037529,000804:
037530,000805: # UNAFC/2 = UNAFC/2+(UNAFC/2-UNAFC/2O)(TTF)/(TPIPOLD-TPIP)
037531,000806:
037532,000807: 22,2645 00006 EXIGEND EXTEND
037533,000808: 22,2646 31451 DCA TPIPOLD
037534,000809: 22,2647 52145 DXCH MPAC
037535,000810: 22,2650 00006 EXTEND
037536,000811: 22,2651 41447 DCS TPIP
037537,000812: 22,2652 20145 DAS MPAC
037538,000813:
037539,000814: 22,2653 37742 CA TSCALE
037540,000815: 22,2654 00006 EXTEND
037541,000816: 22,2655 77753 MP BIT3 # MULTIPLIES BY N = 4 LEAVING RESULT IN L
037542,000817: 22,2656 30001 CA L # ASSUMES N(TPIPOLD-TPIP)/4>TTF/4 IN MAGN.
037543,000818: 22,2657 07367 TC DMPNSUB # N(TPIPOLD-TPIP)/4 TO MPAC, TTF UNITS
037544,000819: 22,2660 00006 EXTEND
037545,000820: 22,2661 31453 DCA TTF/4
037546,000821: 22,2662 52145 DXCH MPAC # DIVIDEND TO MPAC
037547,000822: 22,2663 52121 DXCH BUF # DIVISOR TO BUF
037548,000823: 22,2664 05336 TC USPRCADR
037549,000824:
037550,000825: 22,2665 00352 CADR DDV/BDDV # (TTF/4)/(N(TPIPOLD-TPIP)/4) TO MPAC
037551,000826:
037552,000827: 22,2666 37761 CA ZERO
037553,000828: 22,2667 54153 TS MODE # TO INDICATE DP IN MPAC
037554,000829:
037555,000830: 22,2670 06103 TC INTPRET
037556,000831: 22,2671 52315 PDVL VSU
037557,000832: 22,2672 02171 UNAFC/2
037558,000833: 22,2673 02177 UNAFC/20
037559,000834: 22,2674 74352 VSL2 VXSC # VSL2 UNDOES MP BIT3 PRECEDING
037560,000835: 22,2675 02171 UNAFC/2
037561,000836: 22,2676 77655 VAD
037562,000837:
037563,000838: 22,2677 02171 UNAFC/2 # YIELDS EXTRAPOLATED UNAFC/2
037564,000839:
037565,000840: # SET UP FOR MISSION CONTROL PROGRAM
037566,000841:
037567,000842: 22,2700 15656 STODL POINTVSM # STORE FOR KALCMANU
037568,000843: 22,2701 02053 TTF/4
037569,000844: 22,2702 41276 DCOMP DMP
037570,000845: 22,2703 05561 TSCALINV
037571,000846: 22,2704 77615 DAD
037572,000847: 22,2705 01321 PIPTIME
037573,000848:
037574,000849: 22,2706 02057 STORE TULLG # TIME AT WHICH ULLAGE IS TO START
037575,000850:
037576,000851: # SET UP FOR BRAKING PHASE
037577,000852:
037578,000853: 22,2707 77776 EXIT
037579,000854:
![]() |
Page 831 |
037581,000856: 22,2710 04147 TC PHASCHNG # PROTECT TTF/4 AND PREVENT REREADING REG-
037582,000857: 22,2711 04022 +402 OCT 04022 # ISTERS REWRITTEN BY MISN CONT PROGRAM
037583,000858: 22,2712 00006 EXTEND
037584,000859: 22,2713 31455 DCA TTF/4TMP
037585,000860: 22,2714 53453 DXCH TTF/4
037586,000861:
037587,000862: # RETURN TO MISSION CONTROL PROGRAM
037588,000863:
037589,000864: 22,2715 03373 TC PRETINIT # INITIALIZES INTERPRETER
037590,000865: 22,2716 00006 EXTEND
037591,000866: 22,2717 33553 DCA RETPREBL
037592,000867: 22,2720 52006 DTCB
037593,000868:
![]() |
Page 832 |
037595,000870: # EXQDLIN STORES THE SEMI-UNIT VECTOR DEFINING THE DIRECTION OF COMMANDED THRUST ACCELERATION (UNAFC/2) IN THE
037596,000871: # APPROPRIATE REGISTERS OF FINDCDUD (AXISD) AND CALLS FINDCDUD AS A SUBROUTINE.
037597,000872:
037598,000873: # THEN EXQDLIN TRANSFERS THE COMMANDED THRUST ACCELERATION MAGNITUDE (/AFC/) TO THE APPROPRIATE REGISTERS OF
037599,000874: # THROTCON, (/ACF/), CHANGING SCALING, AND CALLS THROTCON AS A SUBROUTINE.
037600,000875: # FINALLY EXQDLIN TERMINATES THE JOB.
037601,000876:
037602,000877: 22,2721 06103 EXQDLIN TC INTPRET
037603,000878: 22,2722 77775 VLOAD
037604,000879: 22,2723 02171 UNAFC/2
037605,000880: 22,2724 36233 STCALL AXISD
037606,000881: 22,2725 60643 FINDCDUD # ATTITUDE CONTROL
037607,000882: 22,2726 77776 EXIT
037608,000883:
037609,000884:
037610,000885: 22,2727 00006 EXTEND
037611,000886: 22,2730 33557 DCA THROTCOL
037612,000887: 22,2731 52006 DTCB # THROTTLE CONTROL
037613,000888: 22,2732 05605 TC ENDOFJOB # TERMINATES THE JOB PERIODICALLY STARTED
037614,000889: # BY A WAITLIST CALL FROM READACCS
037615,000890:
037616,000891:
037617,000892:
037618,000893: # EXFINAL IS THE FINAL EXIT FROM 2DPS. FIRST EXFINAL PLACES THE SEMI-UNIT NORMAL TO THE ORBITAL PLANE (CPT6/2)
037619,000894: # IN AXISD AND CALLS FINDCDUD AS A SUBROUTINE. THIS CAUSES FURTHER THRUSTING TO BE NORMAL TO THE ORBITAL PLANE.
037620,000895: # THEN EXFINAL TRANSFERS THE COMMANDED THRUST ACCELERATION MAGNITUDE (/AFC/) TO THE APPROPRIATE REGISTERS OF
037621,000896:
037622,000897: # THROTCON, (/ACF/), CHANGING SCALING, AND CALLS THROTCON AS A SUBROUTINE.
037623,000898: # FINALLY EXFINAL RETURNS TO THE MISSION CONTROL PROGRAM WHICH EXECUTES THE RANDOM THROTTLING.
037624,000899:
037625,000900: 22,2733 06103 EXFINAL TC INTPRET
037626,000901: 22,2734 77775 VLOAD
037627,000902: 22,2735 02357 CPT6/2
037628,000903: 22,2736 36233 STCALL AXISD
037629,000904: 22,2737 60643 FINDCDUD # ATTITUDE CONTROL
037630,000905: 22,2740 77776 EXIT
037631,000906:
037632,000907: 22,2741 00006 EXTEND
037633,000908: 22,2742 33557 DCA THROTCOL
037634,000909: 22,2743 52006 DTCB # THROTTLE CONTROL
037635,000910: 22,2744 03373 TC PRETINIT # INITIALIZES INTERPRETER
037636,000911: 22,2745 00006 EXTEND
037637,000912: 22,2746 33555 DCA RETBURNL
037638,000913: 22,2747 52006 DTCB
037639,000914:
![]() |
Page 833 |
037641,000916: # ************************************************************************
037642,000917: # SPECIAL PURPOSE SUBROUTINES OF SECOND DPS GUIDANCE
037643,000918: # ************************************************************************
037644,000919:
037645,000920: # ************************************************************************
037646,000921: # IGNITION ALGORITHM
037647,000922: # ************************************************************************
037648,000923:
037649,000924:
037650,000925: # IGNITN1 EXTRAPOLATES THE GIVEN STATE FORWARD THROUGH THE TIME INTERVAL REQUIRED TO ACCOMPLISH ULLAGE AND TO
037651,000926: # LITE AT LOW THRUST AND TRIM THE ENGINE. THE EXTRAPOLATION ENDS AT THE TIME MAXIMUM THRUST WOULD BE COMMANDED
037652,000927: # IF THE LITEUP PROCEDURE WERE INITIATED AT THE CURRENT GIVEN TIME. (THE GIVEN TIME IS NOT TRUE. ALL GIVEN
037653,000928: # CONDITIONS INCLUDE A FREE-FALL EXTRAPOLATION OF THE ACTUAL ORBIT.) THE EXTRAPOLATION PERFORMED BY IGNITN1
037654,000929: # INCLUDES ALL EFFECTS OF ENGINE THRUST DURING THE LITEUP PROCEDURE, AND IT USES THE
037655,000930: # THRUST POINTING DIRECTION WHICH WILL BE COMMANDED AT THE INITIATION OF MAXIMUM THRUST.
037656,000931: # THIS EXTRAPOLATED STATE IS THEN FED TO THE GUIDANCE EQUATIONS, WHICH COMPUTE THE THRUST POINTING
037657,000932: # DIRECTION (UNAFC/2) AND THE THRUST ACCELERATION MAGNITUDE COMMAND (/AFC/).
037658,000933:
037659,000934: # IGNITN2 THEN RECEIVES THIS OUTPUT DATA FROM THE GUIDANCE EQUATIONS AND DETERMINES WHETHER THE THRUST
037660,000935:
037661,000936: # ACCELERATION MAGNITUDE COMMAND IS MONOTONICALLY INCREASING. WHEN IT IS, IGNITN2 USES THE PRESENT AND PREVIOUS
037662,000937: # VALUES TO COMPUTE ONE QUARTER OF THE PRESENT TIME (TTF/4) RELATIVE TO THE TIME AT WHICH THE THRUST
037663,000938: # ACCELERATION MAGNITUDE COMMAND WILL REACH THE CRITERION VALUE (/AFC/CR) WHICH CORRESPONDS TO MAXIMUM THROTTLE.
037664,000939: # WHEN TTF/4 SO COMPUTED REACHES THE TIME CRITERION FOR TERMINATING THE PREBURN PHASE (TTF/4CR),
037665,000940: # EXIGEND IS PROCESSED, TERMINATING THE PHASE AND RETURNING CONTROL TO THE MISSION CONTROL PROGRAM.
037666,000941: # THE MISSION CONTROL PROGRAM EXECUTES THE COMPUTED IGNITION SEQUENCE. IGNITN2 MUST ALSO, ON EACH PASS,
037667,000942: # REESTABLISH CERTAIN DATA REQUIRED FOR THE SUBSEQUENT PASS.
037668,000943:
037669,000944: # IGNITION ALGORITHM PART 1
037670,000945: # ************************************************************************
037671,000946:
037672,000947: # DO TEMPORARY STORAGE
037673,000948:
037674,000949: 22,2750 06103 IGNITN1 TC INTPRET
037675,000950: 22,2751 77745 DLOAD
037676,000951: 22,2752 02165 /AFC/
037677,000952: 22,2753 26167 STOVL /AFC/OLD # OLD VALUE OF /AFC/ FOR USE BY IGNITN2
037678,000953:
037679,000954: 22,2754 02171 UNAFC/2
037680,000955: 22,2755 26177 STOVL UNAFC/20 # OLD VALUE OF UNAFC/2
037681,000956:
037682,000957: # EXTRAPOLATE STATE
037683,000958:
037684,000959:
037685,000960: 22,2756 02061 R
037686,000961: 22,2757 24011 STOVL RDUM
037687,000962: 22,2760 02071 V
037688,000963: 22,2761 24017 STOVL VDUM
037689,000964: 22,2762 02213 GDOTM1
037690,000965: 22,2763 14025 STODL JDUM
037691,000966: 22,2764 05407 PFCULLG # ULLAGE PERIOD
037692,000967: 22,2765 14007 STODL PDUM # DUMMY PERIOD
037693,000968: 22,2766 05411 AFULLG # LEAVE AFULLG IN MPAC
037694,000969:
![]() |
Page 834 |
037696,000971: 22,2767 77624 CALL # EXTRAPOLATES DUMMY STATE AND
037697,000972:
037698,000973: 22,2770 45124 XTRIGN1 # LEAVES INITIAL GRAVITY IN GDUM
037699,000974:
037700,000975: 22,2771 77775 VLOAD
037701,000976: 22,2772 00033 GDUM
037702,000977: 22,2773 16205 STODL GDUMPRES # SAVE INITL GRAVITY FOR COMPUTING GDOTM1
037703,000978:
037704,000979: 22,2774 05413 PFCLITE # LITEUP PERIOD
037705,000980: 22,2775 14007 STODL PDUM
037706,000981: 22,2776 05415 AFLITE # LEAVE AFLITE IN MPAC
037707,000982: 22,2777 77624 CALL
037708,000983: 22,3000 45124 XTRIGN1 # EXTRAPOLATE
037709,000984:
037710,000985:
037711,000986: 22,3001 77745 DLOAD
037712,000987: 22,3002 05417 PFCTRIM # TRIM PERIOD
037713,000988: 22,3003 14007 STODL PDUM
037714,000989: 22,3004 05421 AFTRIM # LEAVE AFTRIM IN MPAC
037715,000990: 22,3005 77624 CALL
037716,000991: 22,3006 45124 XTRIGN1 # YIELDS FINAL EXTRAPOLATED STATE
037717,000992:
037718,000993: 22,3007 77775 VLOAD
037719,000994: 22,3010 00011 RDUM
037720,000995: 22,3011 26113 STOVL RTEMP # RESTART PROTECTION FOR EXTRAPOLATED R
037721,000996:
037722,000997: 22,3012 00017 VDUM
037723,000998: 22,3013 36121 STCALL VTEMP # RESTART PROTECTION FOR EXTRAPOLATED V
037724,000999:
037725,001000: # COMPUTE DERIVATIVE OF GRAVITY
037726,001001:
037727,001002: 22,3014 45363 GDUMCL # YIELDS FINAL GRAVITY IN MPAC AND GDUM
037728,001003: 22,3015 70251 VSU V/SC
037729,001004: 22,3016 02205 GDUMPRES
037730,001005: 22,3017 05401 PPHM1 # COMPLETES COMPUTATION OF DERIV OF G
037731,001006: 22,3020 02213 STORE GDOTM1 # FOR USE NEXT PASS. PROTECTION NOT RQD.
037732,001007: 22,3021 77776 EXIT
037733,001008:
037734,001009:
037735,001010: # GENERATION OF EXTRAPOLATED DATA COMPLETE. PROTECT AND TRANSFER TO STORAGE.
037736,001011:
037737,001012: 22,3022 04147 TC PHASCHNG # PROTECT R, V
037738,001013: 22,3023 04022 +402 OCT 04022
037739,001014: 22,3024 06103 TC INTPRET
037740,001015: 22,3025 77745 DLOAD
037741,001016: 22,3026 02055 TTF/4TMP
037742,001017: 22,3027 26053 STOVL TTF/4 # RESTORES TTF/4 TO LAST VALUE BY GUIDANCE
037743,001018: 22,3030 02113 RTEMP
037744,001019: 22,3031 26061 STOVL R # EXTRAPOLATED R
037745,001020:
037746,001021: 22,3032 02121 VTEMP
037747,001022: 22,3033 02071 STORE V # EXTRAPOLATED V
037748,001023: 22,3034 77776 EXIT
037749,001024: 22,3035 31404 CA COUNTFCT
037750,001025: 22,3036 55403 TS COUNTFC # FOR IGNITN2
037751,001026:
![]() |
Page 835 |
037753,001028: 22,3037 03205 TC XTRTPIP # YIELDS TPIP EXTRAPOLATED
037754,001029: 22,3040 12164 TCF RETIGN1
037755,001030:
037756,001031:
037757,001032:
037758,001033: # IGNITION ALGORITHM PART 2
037759,001034:
037760,001035: # ************************************************************************
037761,001036:
037762,001037: 22,3041 00006 IGNITN2 EXTEND
037763,001038: 22,3042 31453 DCA TTF/4
037764,001039: 22,3043 53455 DXCH TTF/4TMP # SAVE TTF/4 FOR NEXT PASS
037765,001040: 22,3044 04147 TC PHASCHNG # PROTECT TTF/4
037766,001041: 22,3045 04022 +402 OCT 04022
037767,001042: 22,3046 47735 CS POSMAX
037768,001043: 22,3047 55452 TS TTF/4 # PREVENT PREMATURE TERMINATION OF PREBURN
037769,001044:
037770,001045: # TEST WHETHER /AFC/ > /AFC/OLD, IF SO TEST WHETHER COUNTFC = 0.
037771,001046:
037772,001047: 22,3050 00006 EXTEND
037773,001048: 22,3051 31565 DCA /AFC/
037774,001049: 22,3052 52145 DXCH MPAC
037775,001050: 22,3053 00006 EXTEND
037776,001051: 22,3054 41567 DCS /AFC/OLD
037777,001052: 22,3055 20145 DAS MPAC # /AFC/-/AFC/OLD IN MPAC
037778,001053:
037779,001054: 22,3056 10144 CCS MPAC # TEST HI ORDER
037780,001055: 22,3057 13065 TCF TCOUNTFC
037781,001056: 22,3060 13062 TCF TSTLOAFC
037782,001057:
037783,001058: 22,3061 12567 TCF RETIGN2 -2 # RESET COUNTFC
037784,001059: 22,3062 30145 TSTLOAFC CA MPAC +1 # TEST LO ORDER
037785,001060: 22,3063 00006 EXTEND
037786,001061: 22,3064 62567 BZMF RETIGN2 -2 # RESET COUNTFC
037787,001062: 22,3065 11403 TCOUNTFC CCS COUNTFC
037788,001063: 22,3066 12570 TCF RETIGN2 -1 # DECREMENT COUNTFC
037789,001064:
037790,001065: # RESET TTF/4 BY EXTRAPOLATING /AFC/
037791,001066:
037792,001067: # TTF/4 = (1/4)(TPIPOLD-TPIP)(/AFC/-/AFC/CR)/(/AFC/OLD-/AFC/)
037793,001068:
037794,001069: 22,3067 00006 EXTEND
037795,001070:
037796,001071: 22,3070 31451 DCA TPIPOLD
037797,001072: 22,3071 52145 DXCH MPAC
037798,001073: 22,3072 00006 EXTEND
037799,001074: 22,3073 41447 DCS TPIP
037800,001075: 22,3074 20145 DAS MPAC
037801,001076: 22,3075 37742 CA TSCALE
037802,001077: 22,3076 07367 TC DMPNSUB # (1/4)(TPIPOLD-TPIP) TO MPAC, TTF UNITS
037803,001078:
037804,001079: 22,3077 00006 EXTEND
037805,001080: 22,3100 31565 DCA /AFC/
037806,001081:
![]() |
Page 836 |
037808,001083: 22,3101 52150 DXCH MPAC +3
037809,001084: 22,3102 00006 EXTEND
037810,001085:
037811,001086: 22,3103 43405 DCS /AFC/CR
037812,001087: 22,3104 20150 DAS MPAC +3
037813,001088: 22,3105 07146 TC DMP
037814,001089: 22,3106 00147 GENADR MPAC +3
037815,001090:
037816,001091: 22,3107 00006 EXTEND
037817,001092: 22,3110 31567 DCA /AFC/OLD
037818,001093: 22,3111 52121 DXCH BUF
037819,001094: 22,3112 00006 EXTEND
037820,001095: 22,3113 41565 DCS /AFC/
037821,001096:
037822,001097: 22,3114 20121 DAS BUF
037823,001098: 22,3115 05336 TC USPRCADR
037824,001099: 22,3116 00352 CADR DDV/BDDV # YIELDS TTF/4 IN MPAC
037825,001100:
037826,001101: 22,3117 10111 CCS OVFIND
037827,001102: 22,3120 12566 TCF RETIGN2 -3 # IF TTF/4 OVFL. RESETS OVFIND, COUNTFC.
037828,001103:
037829,001104: 22,3121 52145 DXCH MPAC
037830,001105: 22,3122 53453 DXCH TTF/4
037831,001106: 22,3123 12571 TCF RETIGN2
037832,001107:
037833,001108:
037834,001109:
037835,001110: # ************************************************************************
037836,001111: # SPECIAL PURPOSE STATE EXTRAPOLATION SUBROUTINE FOR IGNITN1
037837,001112: # ************************************************************************
037838,001113:
037839,001114: # XTRIGN1 RECEIVES THE EXTRAPOLATION PERIOD IN PDUM; THE INITIAL STATE IN RDUM, VDUM; THE THRUST ACCELERATION
037840,001115: # MAGNITUDE IN MPAC, DIRECTION IN UNAFC/2; AND JERK IN JDUM.
037841,001116:
037842,001117: # IT LEAVES GRAVITY IN GDUM, THE TOTAL INITIAL ACCELERATION IN ADUM, AND THE EXTRAPOLATED STATE IN RDUM, VDUM.
037843,001118:
037844,001119: # PRESENTLY THE DUM REGISTERS OCCUPY LOCATIONS FIXLOC +6 THRU FIXLOC +45 OCTAL.
037845,001120:
037846,001121: 22,3124 77620 XTRIGN1 STQ
037847,001122: 22,3125 02007 RETXIGN1 # SAVE QPRET
037848,001123: 22,3126 74352 SL1 VXSC
037849,001124: 22,3127 02171 UNAFC/2
037850,001125: 22,3130 45006 PUSH CALL # PUSHES AF UNAFC
037851,001126: 22,3131 45363 GDUMCL # YIELDS GRAVITY IN MPAC AND GDUM
037852,001127: 22,3132 45455 VAD STADR
037853,001128: 22,3133 77736 STORE ADUM # ADUM = AF UNAFC+G
037854,001129: 22,3134 77624 CALL
037855,001130: 22,3135 45333 XTRDUMST # EXTRAPOLATES RDUM, VDUM
037856,001131: 22,3136 77650 GOTO
037857,001132: 22,3137 02007 RETXIGN1
037858,001133:
![]() |
Page 837 |
037860,001135: # ************************************************************************
037861,001136: # LINEAR GUIDANCE - SPHERICAL ACCELERATION AS LINEAR TIME FUNCTION
037862,001137: # ************************************************************************
037863,001138:
037864,001139: # SET LINEAR GUIDANCE COEFFICIENTS IN EVEN NUMBERED PHASES
037865,001140: # ************************************************************************
037866,001141:
037867,001142: 22,3140 02127 LSETEVN TC NTLZPASS
037868,001143:
037869,001144: 22,3141 06103 TC INTPRET
037870,001145: 22,3142 77773 VLOAD*
037871,001146: 22,3143 05424 ADS,1 # - -
037872,001147: 22,3144 16205 STODL ALINS # ALINS = ADS
037873,001148: 22,3145 02153 AFCS +2
037874,001149: 22,3146 77615 DAD
037875,001150: 22,3147 02137 ASPRT +2
037876,001151: 22,3150 02145 STORE ACS +2
037877,001152: 22,3151 26207 STOVL ALINS +2 # ALINS = ACS = AFCS + ASPRT
037878,001153: 22,3152 02205 ALINS # 2 2 2 2
037879,001154: 22,3153 77650 GOTO
037880,001155: 22,3154 45162 LINSET
037881,001156:
037882,001157: # SET LINEAR GUIDANCE COEFFICIENTS IN ODD NUMBERED PHASES
037883,001158: # ************************************************************************
037884,001159:
037885,001160: 22,3155 02127 LSETODD TC NTLZPASS
037886,001161: 22,3156 06103 TC INTPRET
037887,001162: 22,3157 77773 VLOAD*
037888,001163: 22,3160 05424 ADS,1 # - -
037889,001164: 22,3161 02205 STORE ALINS # ADINS = ADS
037890,001165:
037891,001166:
037892,001167: # COMMON PARTS OF LSETEVN AND LSETODD
037893,001168: # ************************************************************************
037894,001169:
037895,001170: 22,3162 77645 LINSET BVSU
037896,001171: 22,3163 02143 ACS
037897,001172: 22,3164 70342 VSR2 V/SC
037898,001173: 22,3165 02053 TTF/4 # - - -
037899,001174: 22,3166 02213 STORE JLINS # JLINS = 1/4 (ACS - ALINS)/(TTF/4)
037900,001175: 22,3167 77776 EXIT
037901,001176: 22,3170 12211 TCF TTFINCR +1
037902,001177:
037903,001178: # LINEAR GUIDANCE EQUATIONS
037904,001179: # ************************************************************************
037905,001180:
037906,001181: 22,3171 06103 LINGUID TC INTPRET
037907,001182: 22,3172 74375 VLOAD VXSC
037908,001183: 22,3173 02213 JLINS
037909,001184: 22,3174 02053 TTF/4
037910,001185: 22,3175 77752 VSL2
037911,001186: 22,3176 52255 VAD VSU
037912,001187:
![]() |
Page 838 |
037914,001189: 22,3177 02205 ALINS
037915,001190:
037916,001191: 22,3200 02135 ASPRT # - - - -
037917,001192: 22,3201 16151 STODL AFCS # AFCS = 4 JLINS/(TTF/4) + ALINS - ASPRT
037918,001193: 22,3202 02155 AFCS +4
037919,001194: 22,3203 77650 GOTO
037920,001195: 22,3204 44543 AFCCALC
037921,001196:
037922,001197:
037923,001198:
037924,001199: # ************************************************************************
037925,001200: # SUBROUTINE TO SET TPIP EXTRAPOLATED
037926,001201: # ************************************************************************
037927,001202:
037928,001203: 22,3205 00006 XTRTPIP EXTEND
037929,001204: 22,3206 31321 DCA PIPTIME
037930,001205: 22,3207 53447 DXCH TPIP
037931,001206: 22,3210 00006 EXTEND
037932,001207: 22,3211 33403 DCA PPHM1CS
037933,001208: 22,3212 21447 DAS TPIP
037934,001209: 22,3213 00002 TC Q
037935,001210:
![]() |
Page 839 |
037937,001212: # ************************************************************************
037938,001213: # GENERAL PURPOSE SUBROUTINES CONTRIBUTED BY SECOND DPS GUIDANCE
037939,001214: # ************************************************************************
037940,001215:
037941,001216: # ************************************************************************
037942,001217: # DOUBLE PRECISION ROOT FINDER SUBROUTINE
037943,001218: # ************************************************************************
037944,001219:
037945,001220: # N N-1
037946,001221: # ROOTPSRS FINDS ONE ROOT OF THE POWER SERIES A X + A X + ... + A X + A
037947,001222: # N N-1 1 0
037948,001223:
037949,001224: # USING NEWTON'S METHOD STARTING WITH AN INITIAL GUESS FOR THE ROOT. THE ENTERING DATA MUST BE AS FOLLOWS:
037950,001225:
037951,001226: # A SP LOC-3 ADRES FOR REFERENCING PWR COF TABL
037952,001227: # L SP N-1 N IS THE DEGREE OF THE POWER SERIES
037953,001228: # MPAC DP X INITIAL GUESS FOR ROOT
037954,001229:
037955,001230: # LOC-2N DP A(0)
037956,001231: # ...
037957,001232: # LOC DP A(N)
037958,001233: # LOC+2 SP PRECROOT PREC RQD OF ROOT (AS FRACT OF 1ST GUESS)
037959,001234:
037960,001235: # THE DP RESULT IS LEFT IN MPAC UPON EXIT, AND A SP COUNT OF THE ITERATIONS TO CONVERGENCE IS LEFT IN MPAC+2.
037961,001236: # RETURN IS TO LOC(TC POWRSERS)+1.
037962,001237:
037963,001238: # PRECAUTION: ROOTPSRS MAKES NO CHECKS FOR OVERFLOW OR FOR IMPROPER USAGE. IMPROPER USAGE COULD
037964,001239: # PRECLUDE CONVERGENCE OR REQUIRE EXCESSIVE ITERATIONS. AS A SPECIFIC EXAMPLE, ROOTPSRS FORMS A DERIVATIVE
037965,001240:
037966,001241: # COEFFICIENT TABLE BY MULTIPLYING EACH A(I) BY I, WHERE I RANGES FROM 1 TO N. IF AN ELEMENT OF THE DERIVATIVE
037967,001242: # COEFFICIENT TABLE = 1 OR > 1 IN MAGNITUDE, ONLY THE EXCESS IS RETAINED. ROOTPSRS MAY CONVERGE ON THE CORRECT
037968,001243: # ROOT NONETHELESS, BUT IT MAY TAKE AN EXCESSIVE NUMBER OF ITERATIONS. THEREFORE THE USER SHOULD RECOGNIZE:
037969,001244:
037970,001245: # 1. USER'S RESPONSIBILITY TO ASSURE THAT I X A(I) < 1 IN MAGNITUDE FOR ALL I.
037971,001246:
037972,001247: # 2. USER'S RESPONSIBILITY TO ASSURE OVERFLOW WILL NOT OCCUR IN EVALUATING EITHER THE RESIDUAL OR THE DERIVATIVE
037973,001248: # POWER SERIES. THIS OVERFLOW WOULD BE PRODUCED BY SUBROUTINE POWRSERS, CALLED BY ROOTPSRS, AND MIGHT NOT
037974,001249: # PRECLUDE EVENTUAL CONVERGENCE.
037975,001250:
037976,001251: # 3. AT PRESENT, ERASABLE LOCATIONS ARE RESERVED ONLY FOR N UP TO 5. AN N IN EXCESS OF 5 WILL PRODUCE CHAOS.
037977,001252: # ALL ERASABLES USED BY ROOTPSRS ARE UNSWITCHED LOCATED IN THE REGION FROM MPAC-33 OCT TO MPAC+7.
037978,001253:
037979,001254: # 4. THE ITERATION COUNT RETURNED IN MPAC+2 MAY BE USED TO DETECT ABNORMAL PERFORMANCE.
037980,001255:
037981,001256: # STORE ENTERING DATA, INITLIZE ERASABLES
037982,001257:
037983,001258: 22,3214 00006 ROOTPSRS EXTEND
037984,001259: 22,3215 22122 QXCH RETROOT # RETURN ADRES
037985,001260: 22,3216 54107 TS PWRPTR # PWR TABL POINTER
037986,001261: 22,3217 52150 DXCH MPAC +3 # PWR TABL ADRES, N-1
037987,001262: 22,3220 33332 CA DERTABLL
037988,001263:
![]() |
Page 840 |
037990,001265: 22,3221 54131 TS DERPTR # DER TABL POINTER
037991,001266: 22,3222 54151 TS MPAC +5 # DER TABL ADRES
037992,001267:
037993,001268: 22,3223 10150 CCS MPAC +4 # NO POWER SERIES OF DEGREE 1 OR LESS
037994,001269: 22,3224 54152 TS MPAC +6 # N-2
037995,001270: 22,3225 37761 CA ZERO # MODE USED AS ITERATION COUNTER. MODE
037996,001271: 22,3226 54153 TS MODE # MUST BE POS SO ABS WON'T COMP MPAC+3 ETC
037997,001272:
037998,001273: # COMPUTE CRITERION TO STOP ITERATING
037999,001274:
038000,001275: 22,3227 00006 EXTEND
038001,001276: 22,3230 30145 DCA MPAC # FETCH ROOT GUESS, KEEPING IT IN MPAC
038002,001277: 22,3231 52117 DXCH ROOTPS # AND IN ROOTPS
038003,001278:
038004,001279: 22,3232 50147 INDEX MPAC +3 # PWR TABL ADRES
038005,001280: 22,3233 30005 CA 5 # PRECROOT TO A
038006,001281: 22,3234 07351 TC SHORTMP # YIELDS DP PRODUCT IN MPAC
038007,001282: 22,3235 05336 TC USPRCADR
038008,001283: 22,3236 01174 CADR ABS # YIELDS ABVAL OF CRITERION ON DX IN MPAC
038009,001284: 22,3237 52145 DXCH MPAC
038010,001285: 22,3240 52115 DXCH DXCRIT # CRITERION
038011,001286:
038012,001287: # SET UP DER COF TABL
038013,001288:
038014,001289: 22,3241 00006 EXTEND
038015,001290: 22,3242 50107 INDEX PWRPTR
038016,001291:
038017,001292: 22,3243 30004 DCA 3
038018,001293: 22,3244 52145 DXCH MPAC # A(N) TO MPAC
038019,001294:
038020,001295: 22,3245 30150 CA MPAC +4 # N-1 TO A
038021,001296:
038022,001297: 22,3246 54130 DERCLOOP TS PWRCNT # LOOP COUNTER
038023,001298: 22,3247 67755 AD ONE
038024,001299: 22,3250 07367 TC DMPNSUB # YIELDS DERCOF = I X A(I) IN MPAC
038025,001300: 22,3251 00006 EXTEND
038026,001301: 22,3252 50107 INDEX PWRPTR
038027,001302:
038028,001303: 22,3253 30002 DCA 1
038029,001304: 22,3254 52145 DXCH MPAC # A(I-1) TO MPAC, FETCHING DERCOF
038030,001305: 22,3255 50131 INDEX DERPTR
038031,001306: 22,3256 52004 DXCH 3 # DERCOF TO DER TABL
038032,001307: 22,3257 47754 CS TWO
038033,001308: 22,3260 26107 ADS PWRPTR # DECREMENT PWR POINTER
038034,001309: 22,3261 47754 CS TWO
038035,001310: 22,3262 26131 ADS DERPTR # DECREMENT DER POINTER
038036,001311: 22,3263 10130 CCS PWRCNT
038037,001312: 22,3264 13246 TCF DERCLOOP
038038,001313:
038039,001314: # CONVERGE ON ROOT
038040,001315:
038041,001316:
038042,001317: 22,3265 00006 ROOTLOOP EXTEND
038043,001318: 22,3266 30117 DCA ROOTPS # FETCH CURRENT ROOT
038044,001319: 22,3267 52145 DXCH MPAC # LEAVE IN MPAC
038045,001320:
![]() |
Page 841 |
038047,001322: 22,3270 00006 EXTEND
038048,001323: 22,3271 30152 DCA MPAC +5 # LOAD A, L WITH DER TABL ADRES, N-2
038049,001324: 22,3272 07260 TC POWRSERS # YIELDS DERIVATIVE IN MPAC
038050,001325:
038051,001326: 22,3273 00006 EXTEND
038052,001327: 22,3274 30117 DCA ROOTPS
038053,001328: 22,3275 52145 DXCH MPAC # CURRENT ROOT TO MPAC, FETCHING DERIVTIVE
038054,001329: 22,3276 52121 DXCH BUF # LEAVE DERIVATIVE IN BUF AS DIVISOR
038055,001330:
038056,001331: 22,3277 00006 EXTEND
038057,001332: 22,3300 30150 DCA MPAC +3 # LOAD A, L WITH PWR TABL ADRES, N-1
038058,001333: 22,3301 07260 TC POWRSERS # YIELDS RESIDUAL IN MPAC
038059,001334:
038060,001335: 22,3302 05336 TC USPRCADR
038061,001336: 22,3303 00352 CADR DDV/BDDV # YIELDS -DX IN MPAC
038062,001337:
038063,001338: 22,3304 00006 EXTEND
038064,001339: 22,3305 40145 DCS MPAC # FETCH DX, LEAVING -DX IN MPAC
038065,001340: 22,3306 20117 DAS ROOTPS # CORRECTED ROOT NOW IN ROOTPS
038066,001341:
038067,001342:
038068,001343: 22,3307 05336 TC USPRCADR
038069,001344: 22,3310 01174 CADR ABS # YIELDS ABS(DX) IN MPAC
038070,001345: 22,3311 00006 EXTEND
038071,001346: 22,3312 40115 DCS DXCRIT
038072,001347: 22,3313 20145 DAS MPAC # ABS(DX)-ABS(DXCRIT) IN MPAC
038073,001348:
038074,001349: 22,3314 24153 INCR MODE # INCREMENT ITERATION COUNTER
038075,001350:
038076,001351: 22,3315 10144 CCS MPAC # TEST HI ORDER DX
038077,001352: 22,3316 13265 TCF ROOTLOOP
038078,001353: 22,3317 13321 TCF TESTLODX
038079,001354:
038080,001355: 22,3320 13325 TCF ROOTSTOR
038081,001356: 22,3321 10145 TESTLODX CCS MPAC +1 # TEST LO ORDER DX
038082,001357: 22,3322 13265 TCF ROOTLOOP
038083,001358: 22,3323 13325 TCF ROOTSTOR
038084,001359: 22,3324 13325 TCF ROOTSTOR
038085,001360: 22,3325 52117 ROOTSTOR DXCH ROOTPS
038086,001361: 22,3326 52145 DXCH MPAC # STORE DP ROOT IN MPAC, MPAC+1
038087,001362: 22,3327 30153 CA MODE
038088,001363: 22,3330 54146 TS MPAC +2 # STORE SP ITERATION COUNT IN MPAC+2
038089,001364: 22,3331 00122 TC RETROOT
038090,001365:
038091,001366: 22,3332 00137 DERTABLL ADRES DERCOFN -3
038092,001367:
![]() |
Page 842 |
038094,001369: # ************************************************************************
038095,001370: # GENERAL PURPOSE SUBROUTINE FOR EXTRAPOLATING DUMMY STATE RDUM, VDUM
038096,001371: # ************************************************************************
038097,001372:
038098,001373: # XTRDUMST REQUIRES THE EXTRAPOLATION PERIOD, INITIAL POSITION, INITIAL VELOCITY, INITIAL ACCELERATION, JERK
038099,001374: # TO ARRIVE IN PDUM, RDUM, VDUM, ADUM, JDUM.
038100,001375:
038101,001376: # IT LEAVES THE EXTRAPOLATED STATE IN RDUM, VDUM.
038102,001377:
038103,001378: # PRESENTLY THE DUM REGISTERS ARE LOCATIONS FIXLOC +6 THRU FIXLOC +31 OCTAL, AND FIXLOC +40 OCTAL THRU
038104,001379: # FIXLOC +45 OCTAL.
038105,001380:
038106,001381: # 2 3
038107,001382: # THE EQNS ARE RDUM = RDUM+VDUM PDUM+ADUM PDUM /2+JDUM PDUM /6,
038108,001383:
038109,001384: # 2
038110,001385: # VDUM = VDUM+ADUM PDUM+JDUM PDUM /2.
038111,001386:
038112,001387: # THEY ARE PROGRAMMED AS RDUM = ((JDUM PDUM/3+ADUM)PDUM/2+VDUM)PDUM+RDUM
038113,001388:
038114,001389: # VDUM = (JDUM PDUM/2+ADUM)PDUM+VDUM
038115,001390:
038116,001391: 22,3333 77745 XTRDUMST DLOAD
038117,001392: 22,3334 00007 PDUM
038118,001393: 22,3335 74205 DMP VXSC
038119,001394:
038120,001395: 22,3336 05571 1/3DP
038121,001396: 22,3337 00025 JDUM
038122,001397: 22,3340 74255 VAD VXSC
038123,001398: 22,3341 00041 ADUM
038124,001399: 22,3342 00007 PDUM
038125,001400: 22,3343 53362 VSR1 VAD
038126,001401: 22,3344 00017 VDUM
038127,001402: 22,3345 53361 VXSC VAD
038128,001403: 22,3346 00007 PDUM
038129,001404: 22,3347 00011 RDUM
038130,001405: 22,3350 14011 STODL RDUM # EXTRAPOLATED RDUM. NO RESTART PROTECTION
038131,001406:
038132,001407:
038133,001408: 22,3351 00007 PDUM
038134,001409: 22,3352 74362 SR1R VXSC
038135,001410: 22,3353 00025 JDUM
038136,001411: 22,3354 74255 VAD VXSC
038137,001412: 22,3355 00041 ADUM
038138,001413: 22,3356 00007 PDUM
038139,001414: 22,3357 77655 VAD
038140,001415: 22,3360 00017 VDUM
038141,001416: 22,3361 00017 STORE VDUM # EXTRAPOLATED VDUM. NO RESTART PROTECTION
038142,001417: 22,3362 77616 RVQ
038143,001418:
![]() |
Page 843 |
038145,001420: # ************************************************************************
038146,001421: # DUMMY GRAVITY SUBROUTINE
038147,001422: # ************************************************************************
038148,001423:
038149,001424: # GDUMCL COMPUTES GRAVITY GIVEN POSITION IN RDUM, LEAVING RESULT IN MPAC AND GDUM.
038150,001425:
038151,001426: # 2
038152,001427: # GDUM =-MUEARTH UNIT(RDUM)/((ABVAL(RDUM)) )
038153,001428:
038154,001429: 22,3363 57575 GDUMCL VLOAD VCOMP
038155,001430: 22,3364 00011 RDUM
038156,001431: 22,3365 74256 UNIT VXSC
038157,001432: 22,3366 21143 MUEARTH
038158,001433: 22,3367 76541 V/SC VSL1 # SHIFT COMPENSATES FOR SEMI-UNIT
038159,001434: 22,3370 00043 42
038160,001435: 22,3371 00033 STORE GDUM
038161,001436: 22,3372 77616 RVQ
038162,001437:
038163,001438:
038164,001439:
038165,001440: # ************************************************************************
038166,001441: # INTERPRETER INITIALIZATION SUBROUTINE
038167,001442: # ************************************************************************
038168,001443:
038169,001444: 22,3373 30110 PRETINIT CA FIXLOC
038170,001445: 22,3374 54156 TS PUSHLOC
038171,001446: 22,3375 37761 CA ZERO
038172,001447: 22,3376 54111 TS OVFIND
038173,001448: 22,3377 00002 TC Q
038174,001449:
![]() |
Page 844 |
038176,001451: # ************************************************************************
038177,001452: # SECOND DPS TARGET PARAMETERS
038178,001453:
038179,001454: # ************************************************************************
038180,001455:
038181,001456: # PARAMETER TABLE INDIRECT ADDRESSES
038182,001457:
038183,001458: 22,3400 22,3422 TTF/4NU = TTF/4N0X
038184,001459: 22,3400 22,3423 ADS = A0XS
038185,001460: 22,3400 22,3431 RDS = R0XS
038186,001461: 22,3400 22,3437 VDS = V0XS
038187,001462: 22,3400 22,3445 JDS2 = J0XS2
038188,001463: 22,3400 22,3447 MADP2 = MA0XP2
038189,001464:
038190,001465:
038191,001466: # A CONSISTENT SET OF UNITS IS USED THRUOUT THE SECOND DPS GUIDANCE. THESE UNITS ARE:
038192,001467: # TIME 2( 15)CS; LENGTH 2( 24)M; ANGLE 2( 0)RAD.
038193,001468:
038194,001469: # IGNITION ALGORITHM - PREBURN PARAMETERS
038195,001470: # ************************************************************************
038196,001471:
038197,001472: 22,3400 03213 00000 PPHM1 2DEC* +3.350000000 E+3 B-15*
038198,001473:
038199,001474: 22,3402 00000 06426 PPHM1CS 2DEC* +3.350000000 E+3 B-28*
038200,001475:
038201,001476: 22,3404 00466 37617 /AFC/CR 2DEC* +2.965861098 E-4 B+6*
038202,001477:
038203,001478:
038204,001479: 22,3406 00567 00000 PFCULLG 2DEC* +7.500000000 E+2 B-15*
038205,001480:
038206,001481: 22,3410 00006 13657 AFULLG 2DEC* +6.074952094 E-6 B+6*
038207,001482:
038208,001483: 22,3412 00226 00000 PFCLITE 2DEC* +3.000000000 E+2 B-15*
038209,001484:
038210,001485: 22,3414 00041 21100 AFLITE 2DEC* +3.198162867 E-5 B+6*
038211,001486:
038212,001487: 22,3416 02176 00000 PFCTRIM 2DEC* +2.300000000 E+3 B-15*
038213,001488:
038214,001489:
038215,001490: 22,3420 00041 22563 AFTRIM 2DEC* +3.202931538 E-5 B+6*
038216,001491:
![]() |
Page 845 |
038218,001493: # PARAMETER TABLE FOR BURN PHASES
038219,001494: # ************************************************************************
038220,001495:
038221,001496: 22,3422 65006 TTF/4N0X DEC* -1.125000000 E+4 B-15*
038222,001497:
038223,001498: 22,3423 77646 43535 A0XS 2DEC* -8.572092116 E-5 B+6*
038224,001499:
038225,001500: 22,3425 00000 00000 2DEC 0 B-28
038226,001501:
038227,001502:
038228,001503: 22,3427 02376 35641 2DEC* +7.269884947 E-11 B+30*
038229,001504:
038230,001505: 22,3431 14634 00651 R0XS 2DEC* +6.713370537 E+6 B-24*
038231,001506:
038232,001507: 22,3433 00000 00000 2DEC 0 B-28
038233,001508:
038234,001509: 22,3435 00255 00717 2DEC* +1.056080555 E-2 B-0*
038235,001510:
038236,001511: 22,3437 77735 66716 V0XS 2DEC* -1.071382748 E+0 B-9*
038237,001512:
038238,001513:
038239,001514: 22,3441 00000 00000 2DEC 0 B-28
038240,001515:
038241,001516: 22,3443 77024 46232 2DEC* -9.160545259 E-7 B+15*
038242,001517:
038243,001518: 22,3445 01260 30176 J0XS2 2DEC* +1.194804087 E-15 B+45*
038244,001519:
038245,001520: 22,3447 01727 22763 MA0XP2 2DEC* +5.156859816 E+8 B-33*
038246,001521:
![]() |
Page 846 |
038248,001523: 22,3451 75435 TTF/4N0F DEC* -2.500000000 E+3 B-15*
038249,001524:
038250,001525:
038251,001526: 22,3452 77713 45300 A0FS 2DEC* -5.038447857 E-5 B+6*
038252,001527:
038253,001528: 22,3454 00000 00000 2DEC 0 B-28
038254,001529:
038255,001530: 22,3456 01357 27066 2DEC* +4.273045103 E-11 B+30*
038256,001531:
038257,001532: 22,3460 14617 11361 R0FS 2DEC* +6.700335070 E+6 B-24*
038258,001533:
038259,001534: 22,3462 00000 00000 2DEC 0 B-28
038260,001535:
038261,001536: 22,3464 00067 06341 2DEC* +3.369214099 E-3 B-0*
038262,001537:
038263,001538:
038264,001539: 22,3466 77716 61241 V0FS 2DEC* -1.545589897 E+0 B-9*
038265,001540:
038266,001541: 22,3470 00000 00000 2DEC 0 B-28
038267,001542:
038268,001543: 22,3472 77354 43410 2DEC* -5.138853270 E-7 B+15*
038269,001544:
038270,001545: 22,3474 00441 31226 J0FS2 2DEC* +5.027062289 E-16 B+45*
038271,001546:
038272,001547: 22,3476 01727 22763 MA0FP2 2DEC* +5.156859816 E+8 B-33*
038273,001548:
038274,001549:
038275,001550:
038276,001551: 22,3500 77715 TTF/4NU1 DEC* -1.000000000 E+2 B-15*
038277,001552:
038278,001553: 22,3501 00064 34377 A1FS 2DEC* +5.044035031 E-5 B+6*
038279,001554:
038280,001555: 22,3503 00000 00000 2DEC* 0 B-28
038281,001556:
038282,001557: 22,3505 01360 21617 2DEC* +4.277783493 E-11 B+30*
038283,001558:
![]() |
Page 847 Workaround: the following line has been changed to OCT because yaYUL produces slightly different numerical results. The original was as follows: TTF/4NU2 DEC* -3.375000000 E+3 B-15* |
038288,001563: 22,3507 74550 TTF/4NU2 OCT 74550
038289,001564:
038290,001565: 22,3510 00213 25223 A2FS 2DEC* +1.331951587 E-4 B+6*
038291,001566:
038292,001567: 22,3512 00000 00000 2DEC 0 B-28
038293,001568:
038294,001569:
038295,001570: 22,3514 00536 14712 2DEC* +1.991810043 E-11 B+30*
038296,001571:
038297,001572: 22,3516 14602 17421 R2FS 2DEC* +6.687217073 E+6 B-24*
038298,001573:
038299,001574: 22,3520 00000 00000 2DEC 0 B-28
038300,001575:
038301,001576: 22,3522 00000 06001 2DEC* +1.144811884 E-5 B-0*
038302,001577:
038303,001578: 22,3524 77774 45220 V2FS 2DEC* -1.198407174 E-1 B-9*
038304,001579:
038305,001580: 22,3526 00000 00000 2DEC 0 B-28
038306,001581:
038307,001582: 22,3530 77764 43337 2DEC* -2.215170344 E-8 B+15*
038308,001583:
038309,001584: 22,3532 74137 67600 J2FS2 2DEC* -3.386627333 E-15 B+45*
038310,001585:
038311,001586: 22,3534 01727 22763 MA2FP2 2DEC* +5.156859816 E+8 B-33*
038312,001587:
038313,001588:
038314,001589:
038315,001590: 22,3536 77602 TTF/4NU3 DEC* -2.500000000 E+2 B-15*
038316,001591:
038317,001592: 22,3537 00000 00000 A3FS 2DEC* +1.536879692 E-13 B+6*
038318,001593:
038319,001594: 22,3541 00000 00000 2DEC* 0 B-28
038320,001595:
038321,001596: 22,3543 00654 37552 2DEC* +2.438530673 E-11 B+30*
038322,001597:
![]() |
Page 848 |
038324,001599: # ************************************************************************
038325,001600: # SECOND DPS CONSTANTS
038326,001601:
038327,001602: # ************************************************************************
038328,001603:
038329,001604: # ADDRESS CONSTANTS
038330,001605:
038331,001606: 22,3545 02000 E2DPSL ECADR E2DPS # FOR ACCESSING EBANK OF 2DPS
038332,001607: 22,3546 E4,1400 EBANK= E2DPS
038333,001608: 22,3546 02033 44004 IGNALGL 2BCADR IGNALG
038334,001609:
038335,001610:
038336,001611: # THE NEXT TWO CONSTANTS MUST BE KEPT
038337,001612: # IN ORDER AND ADJACENT
038338,001613: 22,3550 01436 TABLTTFL ADRES TABLTTF +3 # ADRES TO REF TTF TABL
038339,001614: 22,3551 00002 DEGTTF-1 OCT 2 # DEGREE-1 OF TTF POWER SERIES
038340,001615:
038341,001616: 22,3552 E4,1662 EBANK= EMP11JOB
038342,001617: 22,3552 02025 74064 RETPREBL 2BCADR RETPREB
038343,001618:
038344,001619: 22,3554 E4,1662 EBANK= EMP11JOB
038345,001620: 22,3554 02172 74064 RETBURNL 2BCADR RETBURN
038346,001621:
038347,001622: 22,3556 E5,1557 EBANK= ETHROT
038348,001623: 22,3556 03377 60065 THROTCOL 2BCADR THROTCON
038349,001624:
038350,001625:
038351,001626: # ARITHMETIC FRACTIONS AND INTEGERS
038352,001627:
038353,001628: 22,3560 7742 TSCALE = BIT12
038354,001629:
038355,001630: 22,3560 00010 TSCALINV OCT 00010
038356,001631: 22,3561 00000 ZEROPOS OCT 00000 # LO ORDER PART OF TSCALINV, AND
038357,001632: 22,3562 00000 OCT 00000 # FIRST COMPONENT OF ZERO VECTOR
038358,001633: 22,3563 77777 ZERONEG OCT 77777
038359,001634:
038360,001635: 22,3564 77777 OCT 77777
038361,001636: 22,3565 00000 OCT 00000 # LAST COMPONENT OF ZERO VECTOR, AND
038362,001637: 22,3566 00000 PIGNALG OCT 00000 # HI ORDER PART OF PIGNALG, TPIP UNITS
038363,001638: 22,3567 00310 DEC +2 E+2B-14 # LO ORDER PART OF PIGNALG, TPIP UNITS
038364,001639:
038365,001640: 22,3570 12525 12525 1/3DP 2DEC .3333333333
038366,001641:
![]() |
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. |
038370,001645: 22,3572 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. |
038374,001649: 22,3573 22000 SP9/16 DEC .5625 B14
038375,001650: 22,3574 25252 25253 2/3DP 2DEC .6666666667
038376,001651:
038377,001652: 22,3576 22,3574 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. |
038381,001656: 22,3576 30000 SP3/4 DEC .75 B14
038382,001657: 22,3577 31103 36652 PI/4 2DEC +3.14159265 B-2
038383,001658:
038384,001659:
![]() |
Page 849 |
038386,001661:
038387,001662: # ************************************************************************
038388,001663: # VARIOUS TEMPORARY TEST ROUTINES FOR SUBROUTINES CONTRIBUTED BY 2DPS
038389,001664: # ************************************************************************
038390,001665:
038391,001666: # TEST ROOTPSRS ON 5TH DEGREE POWER SERIES
038392,001667:
038393,001668: 22,3601 00006 RUTTEST EXTEND
038394,001669: 22,3602 33627 DCA RUTINIT
038395,001670:
038396,001671: 22,3603 52145 DXCH MPAC
038397,001672:
038398,001673: 22,3604 00006 EXTEND
038399,001674: 22,3605 33646 DCA RUTTABLL
038400,001675: 22,3606 03214 TC ROOTPSRS
038401,001676:
038402,001677: # TEST POLY ON SIN 30 DEGREES
038403,001678:
038404,001679: 22,3607 06103 POLYTEST TC INTPRET
038405,001680: 22,3610 73545 DLOAD SIN
038406,001681:
038407,001682: 22,3611 05650 QTSTPOLY
038408,001683:
038409,001684: # TEST USEPRET ON V/SC
038410,001685:
038411,001686: 22,3612 26111 STOVL RC
038412,001687: 22,3613 05511 A2FS
038413,001688: 22,3614 02113 STORE RS
038414,001689: 22,3615 77776 EXIT
038415,001690: 22,3616 33653 CA OCT1/2L
038416,001691: 22,3617 54106 TS ADDRWD
038417,001692: 22,3620 05326 TC USEPRET
038418,001693: 22,3621 07650 TC V/SC
038419,001694:
038420,001695: 22,3622 06103 TC INTPRET
038421,001696: 22,3623 02121 STORE VS
038422,001697: 22,3624 77776 EXIT
038423,001698: 22,3625 37755 END2DPST CA ONE
038424,001699:
038425,001700: # TEMP CONSTANTS FOR TESTS
![]() |
The following line is "RTUNIT 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. |
038429,001704: 22,3626 30000 RUTINIT DEC .75 B14
038430,001705: 22,3627 00000 OCT 0
038431,001706:
038432,001707: 22,3630 00000 OCT 0
038433,001708: 22,3631 00000 OCT 0
038434,001709:
![]() |
The following line is "OCT +.001 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. |
038438,001713: 22,3632 00040 DEC 1.953125 E-3 B14
038439,001714: 22,3633 00000 OCT 0
038440,001715:
038441,001716: 22,3634 00000 OCT 0
038442,001717: 22,3635 00000 OCT 0
038443,001718:
![]() |
The following line is "OCT -.024 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. |
038447,001722: 22,3636 76577 DEC -3.90625 E-2 B14
038448,001723:
![]() |
Page 850 |
038450,001725: 22,3637 00000 OCT 0
038451,001726:
038452,001727: 22,3640 00000 OCT 0
038453,001728: 22,3641 00000 OCT 0
038454,001729:
![]() |
The following line is "RUTTABL OCT +.100 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. |
038458,001733: 22,3642 04000 RUTTABL DEC +.125 B14
038459,001734: 22,3643 00000 OCT 0
038460,001735:
038461,001736: 22,3644 00001 RUTPREC OCT 1
038462,001737:
038463,001738: 22,3645 03637 RUTTABLL ADRES RUTTABL -3
038464,001739: 22,3646 00004 OCT 4
038465,001740:
038466,001741: 22,3647 02525 12525 QTSTPOLY 2DEC .083333333
038467,001742:
![]() |
The following line is "OCT1/2 OCT .4 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. |
038471,001746: 22,3651 20000 OCT1/2 DEC .5 B14
038472,001747: 22,3652 00000 OCT 0
038473,001748: 22,3653 03651 OCT1/2L ADRES OCT1/2
End of include-file SECOND_DPS_GUIDANCE.agc. Parent file is MAIN.agc