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