# Copyright: Public domain. # Filename: ERASABLE ASSIGNMENTS.agc # Purpose: Part of the source code for Luminary 1A build 099. # It is part of the source code for the Lunar Module's (LM) # Apollo Guidance Computer (AGC), for Apollo 11. # Assembler: yaYUL # Contact: Onno Hommes <ohommes@cmu.edu>. # Website: www.ibiblio.org/apollo. # Pages: 0090-0152 # Mod history: 2009-05-16 OH Transcribed from page images. # 2009-06-05 RSB Eliminated a variable that shouldn't have # survived from Luminary 131. # 2010-12-31 JL Fixed page number comment. # # This source code has been transcribed or otherwise adapted from # digitized images of a hardcopy from the MIT Museum. The digitization # was performed by Paul Fjeld, and arranged for by Deborah Douglas of # the Museum. Many thanks to both. The images (with suitable reduction # in storage size and consequent reduction in image quality as well) are # available online at www.ibiblio.org/apollo. If for some reason you # find that the images are illegible, contact me at info@sandroid.org # about getting access to the (much) higher-quality images which Paul # actually created. # # Notations on the hardcopy document read, in part: # # Assemble revision 001 of AGC program LMY99 by NASA 2021112-061 # 16:27 JULY 14, 1969
# Page 90 # CONVENTIONS AND NOTATIONS UTILIZED FOR ERASABLE ASSIGNMENTS.
# EQUALS IS USED IN TWO WAYS. IT IS OFTEN USED TO CHAIN A GROUP # OF ASSIGNMENTS SO THAT THE GROUP MAY BE MOVED WITH THE # CHANGING OF ONLY ONE CARD. EXAMPLE: # # X EQUALS START # Y EQUALS X +SIZE.X # Z EQUALS Y +SIZE.Y # # (X, Y, AND Z ARE CONSECUTIVE AND BEGIN AT START. # SIZE.X AND SIZE.Y ARE THE RESPECTIVE SIZES OF X AND Y. # USUALLY NUMERIC, IE. 1, 2, 6, 18D, ETC.)
# EQUALS OFTEN IMPLIES THE SHARING OF REGISTERS (DIFFERENT NAMES # AND DIFFERENT DATA). EXAMPLE: # # X EQUALS Y
# = MEANS THAT MULTIPLE NAMES HAVE BEEN GIVEN TO THE SAME DATA. # (THIS IS LOGICAL EQUIVALENCE, NOT SHARING.) EXAMPLE: # # X = Y
# THE SIZE AND UTILIZATION OF AN ERASABLE ARE OFTEN INCLUDED IN # THE COMMENTS IN THE FOLLOWING FORM: M(SIZE)N. # # M REFERS TO THE MOBILITY OF THE ASSIGNMENT. # B MEANS THAT THE SYMBOL IS REFERENCED BY BASIC # INSTRUCTIONS AND THUS IS E-BANK SENSITIVE. # I MEANS THAT THE SYMBOL IS REFERENCED ONLY BY # INTERPRETIVE INSTRUCTIONS, AND IS THUS E-BANK # INSENSITIVE AND MAY APPEAR IN ANY E-BANK. # # SIZE IS THE NUMBER OF REGISTERS INCLUDED BY THE SYMBOL. # # N INDICATES THE NATURE OF PERMANENCE OF THE CONTENTS. # PL MEANS THAT THE CONTENTS ARE PAD LOADED. # DSP MEANS THAT THE REGISTER IS USED FOR A DISPLAY. # PRM MEANS THAT THE REGISTER IS PERMANENT. IE., IT # IS USED DURING THE ENTIRE MISSION FOR ONE # PURPOSE AND CANNOT BE SHARED. # TMP MEANS THAT THE REGISTER IS USED TEMPORARILY OR # IS A SCRATCH REGISTER FOR THE ROUTINE TO WHICH # IT IS ASSIGNED. THAT IS, IT NEED NOT BE SET # PRIOR TO INVOCATION OF THE ROUTINE NOR DOES IT # CONTAIN USEFUL OUTPUT TO ANOTHER ROUTINE. THUS # Page 91 # IT MAY BE SHARED WITHANY OTHER ROUTINE WHICH # IS NOT ACTIVE IN PARALLEL # IN MEANS INPUT TO THE ROUTINE AND IT IS PROBABLY # TEMPORARY FOR A HIGHER-LEVEL ROUTINE/PROGRAM. # OUT MEANS OUTPUT FROM THE ROUTINE, PROBABLY # TEMPORARY FOR A HIGHER-LEVEL ROUTINE/PROGRAM.
# Page 92 # SPECIAL REGISTERS.
A EQUALS0
L EQUALS1# L AND Q ARE BOTH CHANNELS AND REGISTERS
Q EQUALS2 EBANKEQUALS3
FBANK EQUALS4
Z EQUALS5# ADJACENT TO FBANK AND BBANK FOR DXCH Z
BBANK EQUALS6# (DTCB) AND DXCH FBANK (DTCF). # REGISTER 7 IS A ZERO-SOURCE, USED BY ZL.
ARUPT EQUALS10# INTERRUPT STORAGE
LRUPT EQUALS11
QRUPT EQUALS12
SAMPTIME EQUALS13# SAMPLED TIME 1 & 2.
ZRUPT EQUALS15# (13 AND 14 ARE SPARES.)
BANKRUPT EQUALS16# USUALLY HOLDS FBANK OR BBANK.
BRUPT EQUALS17# RESUME ADDRESS AS WELL.
# INTERPRETIVE REGISTERS ADDRESSED RELATIVE TO VAC AREA.
LVSQUARE EQUALS34D # SQUARE OF VECTOR INPUT TO ABVAL AND UNIT
LV EQUALS36D # LENGTH OF VECTOR INPUT TO UNIT.
X1 EQUALS38D # INTERPRETIVE SPECIAL REGISTER RELATIVE
X2 EQUALS39D # TO THE WORK AREA.
S1 EQUALS40D
S2 EQUALS41D
QPRET EQUALS42D
# INPUT/OUTPUT CHANNELS
# *** CHANNEL ZERO IS TO BE USED IN AN INDEXED OPERATION ONLY. ***
LCHAN EQUALS L
QCHAN EQUALS Q
HISCALAR EQUALS3
LOSCALAR EQUALS4
CHAN5 EQUALS5
CHAN6 EQUALS6
SUPERBNK EQUALS7# SUPER-BANK.
OUT0 EQUALS10
DSALMOUT EQUALS11
CHAN12 EQUALS12
CHAN13 EQUALS13
CHAN14 EQUALS14
MNKEYIN EQUALS15
NAVKEYIN EQUALS16
CHAN30 EQUALS30
CHAN31 EQUALS31
CHAN32 EQUALS32
CHAN33 EQUALS33
DNTM1 EQUALS34
DNTM2 EQUALS35
# END OF CHANNEL ASSIGNMENTS
# Page 94 # INTERPRETIVE SWITCH BIT ASSIGNMENTS
# ** FLAGWORDS AND BITS NOW ASSIGNED AND DEFINED IN THEIR OWN LOG SECTION. **
# Page 95 # GENERAL ERASABLE ASSIGNMENTS
SETLOC61 # INTERRUPT TEMPORARY STORAGE POOL. (11D)
# (ITEMP1 THROUGH RUPTREG4)
# ANY OF THESE MAY BE USED AS TEMPORARIES DURING INTERRUPT OR WITH INTERRUPT INHIBITED. THE ITEMP SERIES # IS USED DURING CALLS TO THE EXECUTIVE AND WAITLIST -- THE RUPTREGS ARE NOT.
# P25 RADAR STORAGE. (MAY BE UNSHARED IN E7) (TEMP OVERLAY) (2D) OVERLAYS FLGWRD 14 & 15 # Page 96
LASTYCMD EQUALS STATE +14D # B(1)PRM THESE ARE CALLED BY T4RUPT
LASTXCMD EQUALS LASTYCMD +1# B(1)PRM THEY MUST BE CONTIGUOUS, Y FIRST
# EXEC TEMPORARIES WHICH MAY BE USED BETWEEN CCS NEWJOBS (32D) (INTB15+ THROUGH RUPTMXTM)
INTB15+ ERASE # REFLECTS 15TH BIT OF INDEXABLE ADDRESSES
DSEXIT = INTB15+ # RETURN FOR DSPIN
EXITEM = INTB15+ # RETURN FOR SCALE FACTOR ROUTINE SELECT
BLANKRET = INTB15+ # RETURN FOR 2BLANK
INTBIT15 ERASE # SIMILAR TO ABOVE.
WRDRET = INTBIT15 # RETURN FOR 5BLANK
WDRET = INTBIT15 # RETURN FOR DSPWD
DECRET = INTBIT15 # RETURN FOR PUTCOM(DEC LOAD) 21/22REG = INTBIT15 # TEMP FOR CHARIN
# THE REGISTERS BETWEEN ADDRWD AND PRIORITY MUST STAY IN THE FOLLOWING ORDER FOR INTERPRETIVE TRACE.
ADDRWD ERASE # 12 BIT INTERPRETIVE OPERAND SUB-ADDRESS.
POLISH ERASE # HOLDS CADR MADE FROM POLISH ADDRESS.
UPDATRET = POLISH # RETURN FOR UPDATNN, UPDATVB
CHAR = POLISH # TEMP FOR CHARIN
ERCNT = POLISH # COUNTER FOR ERROR LIGHT RESET
DECOUNT = POLISH # COUNTER FOR SCALING AND DISPLAY (DEC)
FIXLOC ERASE # WORK AREA ADDRESS.
OVFIND ERASE # SET NON-ZERO ON OVERFLOW.
VBUF ERASE +5# TEMPORARY STORAGE USED FOR VECTORS.
SGNON = VBUF # TEMP FOR +,- ON
NOUNTEM = VBUF # COUNTER FOR MIXNOUN FETCH
DISTEM = VBUF # COUNTER FOR OCTAL DISPLAY VERB
DECTEM = VBUF # COUNTER FOR FETCH (DEC DISPLAY VERBS)
SGNOFF = VBUF +1# TEMP FOR +,- ON
NVTEMP = VBUF +1# TEMP FOR NVSUB
SFTEMP1 = VBUF +1# STORAGE FOR SF CONST HI PART (=SFTEMP2-1)
HITEMIN = VBUF +1# TEMP FOR LOAD OF HRS,MIN,SEC # MUST = LOTEMIN-1.
CODE = VBUF +2# FOR DSPIN
SFTEMP2 = VBUF +2# STORAGE FOR SF CONST LO PART (=SFTEMP1+1)
LOTEMIN = VBUF +2# TEMP FOR LOAD OF HRS,MIN,SEC # MUST = HITEMIN+1
MIXTEMP = VBUF +3# FOR MIXNOUN DATA
SIGNRET = VBUF +3# RETURN FOR +,- ON
# ALSO MIXTEMP+1 = VBUF+4, MIXTEMP+2 = VBUF+5
BUF ERASE +2# TEMPORARY SCALAR STORAGE. # Page 97
BUF2 ERASE +1
INDEXLOC EQUALS BUF # CONTAINS ADDRESS OF SPECIFIED INDEX.
SWWORD EQUALS BUF # ADDRESS OF SWITCH WORD.
SWBIT EQUALS BUF +1# SWITCH BIT WITHIN THE SWITCH WORD
MPTEMP ERASE # TEMPORARY USED IN MULTIPLY AND SHIFT
DMPNTEMP = MPTEMP # DMPSUB TEMPORARY
DOTINC ERASE # COMPONENT INCREMENT FOR DOT SUBROUTINE
DVSIGN EQUALS DOTINC # DETERMINES SIGN OF DDV RESULT
ESCAPE EQUALS DOTINC # USED IN ARCSIN/ARCCOS.
ENTRET = DOTINC # EXIT FROM ENTER
MATINC ERASE # VECTOR INCREMENT IN MXV AND VXM
MAXDVSW EQUALS MATINC # +0 IF DP QUOTIENT IS NEAR ONE -- ELSE -1.
POLYCNT EQUALS MATINC # POLYNOMIAL LOOP COUNTER
DSPMMTEM = MATINC # DSPCOUNT SAVE FOR DSPMM
MIXBR = MATINC # INDICATOR FOR MIXED OR NORMAL NOUN
# THE FOLLOWING 10 REGISTERS ARE USED FOR TEMPORARY STORAGE OF THE DERIVATIVE COEFFICIENT TABLE OF # SUBROUTINE ROOTPSRS. THEY MUST REMAIN WITHOUT INTERFERENCE WITH ITS SUBROUTINES WHICH ARE POWRSERS (POLY). # DMPSUB, DMPNSUB, SHORTMP, DDV/BDDV, ABS, AND USPRCADR.
DERCOF-8 = MPAC -12# ROOTPSRS DER COF N-4 HI ORDER
DERCOF-7 = MPAC -11# ROOTPSRS DER COF N-4 LO ORDER
DERCOF-6 = MPAC -10# ROOTPSRS DER COF N-3 HI ORDER
DERCOF-5 = MPAC -7# ROOTPSRS DER COF N-3 LO ORDER
DERCOF-4 = MPAC -6# ROOTPSRS DER COF N-2 HI ORDER
DERCOF-3 = MPAC -5# ROOTPSRS DER COF N-2 LO ORDER
DERCOF-2 = MPAC -4# ROOTPSRS DER COF N-1 HI ORDER
DERCOF-1 = MPAC -3# ROOTPSRS DER COF N-1 LO ORDER
DERCOFN = MPAC -2# ROOTPSRS DER COF N, HI ORDER
DERCOF+1 = MPAC -1# ROOTPSRS DER COF N, LO ORDER
PWRPTR = POLISH # ROOTPSRS POWER TABLE POINTER
DXCRIT = VBUF +2# ROOTPSRS CRITERION FOR ENDING ITERS HI
DXCRIT+1 = VBUF +3# ROOTPSRS CRITERION FOR ENDING ITERS LOW
ROOTPS = VBUF +4# ROOTPSRS ROOT HI ORDER
ROOTPS+1 = VBUF +5# ROOTPSRS ROOT LO ORDER
RETROOT = BUF +2# ROOTPSRS RETURN ADDRESS OF USER
PWRCNT = MATINC # ROOTPSRS DER TABLE LOOP COUNTER
DERPTR = TEM1 # ROOTPSRS DER TABLE POINTER
# Page 99 # DYNAMICALLY ALLOCATED CORE SETS FOR JOBS (84D)
MPAC ERASE +6# MULTI-PURPOSE ACCUMULATOR.
MODE ERASE # +1 FOR TP, +0 FOR DP, OR -1 FOR VECTOR.
LOC ERASE # LOCATION ASSOCIATED WITH JOB.
BANKSET ERASE # USUALLY CONTAINS BBANK SETTING.
PUSHLOC ERASE # WORD OF PACKED INTERPRETIVE PARAMETERS.
PRIORITY ERASE # PRIORITY OF PRESENT JOB AND WORK AREA.
ERASE +83D # EIGHT SETS OF 12 REGISTERS EACH
# INCORP STORAGE: R22 (N29) (SHARES WITH FOLLOWING SECTION) (4D)
R22DISP EQUALS TIME2SAV # I(4) N49 DISPLAY OF DELTA R AND DELTA V
# STANDBY VERB ERASABLES. REDOCTR BEFORE THETADS. (14D)
TIME2SAV ERASE +1
SCALSAVE ERASE +1
REDOCTR ERASE # CONTAINS NUMBER OF RESTARTS
THETAD ERASE +2
CPHI = THETAD # O DESIRED GIMBAL ANGLES
CTHETA = THETAD +1# I FOR
CPSI = THETAD +2# M MANEUVER
DELV ERASE +5
DELVX = DELV
DELVY = DELV +2
DELVZ = DELV +4
# DOWNLINK STORAGE. (28D)
DNLSTADR EQUALS DNLSTCOD
DNLSTCOD ERASE # B(1)PRM DOWNLINK LIST CODE
DUMPCNT ERASE # B(1)
LDATALST ERASE +25D # (26D)
DNTMGOTO EQUALS LDATALST +1# B(1)
TMINDEX EQUALS DNTMGOTO +1# B(1)
DUMPLOC EQUALS TMINDEX # CONTAINS ECADR OF AGC DP WORD BEING DUMPED # AND COUNT OF COMPLETE DUMPS ALREADY # SENT.
DNQ EQUALS TMINDEX +1# B(1)
DNTMBUFF EQUALS DNQ +1# B(22)PRM DOWNLINK SNAPSHOT BUFFER
# UNSWITCHED FOR DISPLAY INTERFACE ROUTINES. (10D) FIVE MORE IN EBANK 2.
# Page 100
RESTREG ERASE # B(1)PRM FOR DISPLAY RESTARTS
NVWORD ERASE
MARKNV ERASE
NVSAVE ERASE # (RETAIN THE ORDER OF CADRFLSH TO FAILREG +2 FOR DOWNLINK PURPOSES)
CADRFLSH ERASE
CADRMARK ERASE
TEMPFLSH ERASE
FAILREG ERASE +2# B(3)PRM 3 ALARM CODE REGISTERS
RATEINDX ERASE # (1) USED BY KALCMANU
DELAYLOC ERASE +2
LEMMASS ERASE # KEEP CONTIGUOUS W. CSMMASS. (1) EACH
CSMMASS ERASE
# LESS IS MORE.
# RENDEZVOUS AND LANDING RADAR DOWNLINK STORAGE. (7D) # # (NORMALLY USED DURING P20, BUT MAY ALSO) # (BE REQUIRED FOR THE V62 SPURIOUS TEST.) # # (PLEASE KEEP IN THIS ORDER)
ADSRAX ERASE # ACCELERATION SENSITIVE DRIFT ALONG THE
ADSRAY ERASE # SPIN REFERENCE AXIS
ADSRAZ ERASE
GCOMP ERASE +5# CONTAINS COMPENSATING TORQUES
COMMAND EQUALS GCOMP
CDUIND EQUALS GCOMP +3
GCOMPSW ERASE
# STATE VECTORS FOR ORBIT INTEGRATION. (44D)
# (DIFEQCNT THUR XKEP MUST BE IN THE SAME # EBANK AS RRECTCSM, RRECTLEM ETC # BECAUSE THE COPY-CYCLES (ATOPCSM, # PTOACSM ETC) ARE EXECUTED IN BASIC. # ALL OTHER REFERENCES TO THIS GROUP # ARE BY INTERPRETIVE INSTRUCTIONS.) #
DIFEQCNT ERASE +43D # B(1) # (UPSVFLAG...XKEP MUST BE KEPT IN ORDER)
VONE' EQUALS VECTAB +30D # I(T)TMP NORMAL VELOCITY VONE / SQRT. MU
# R32(V83) STORAGE. -- SHARES WITH INTEGRATION STORAGE -- (28D)
# Page 115
BASETHV EQUALS RPQV # I(6) BASE VEL VECTOR THIS VEH
BASETIME EQUALS RQVV # I(2) TIME ASSOC WITH BASE VECS
ORIG EQUALS RQVV +2 # I(1) =0 FOR EARTH =2 FOR MOON
STATEXIT EQUALS RQVV +3 # I(1) STQ ADDRESS FOR STATEXTP
BASEOTV EQUALS RQVV +4 # I(6) BASE VEL VECTOR OTHER VEH
BASEOTP EQUALS VECTAB +6 # I(6) BASE POS VECTOR OTHER VEH
BASETHP EQUALS VECTAB +30D # I(6) BASE POS VECTOR THIS VEH
# KEPLER STORAGE. (KEPLER IS CALLED BY PRECISION INTEGRATION AND (2D)
# CONICS)
HPERMIN EQUALS RANGE # I(2) SET TO 300KFT FOR SR30.1
RPADTEM EQUALS HPERMIN +2 # I(2) PAD OR LANDING RADIUS FOR SR30.1
TSTART82 EQUALS RPADTEM +2 # I(2) TEMP TIME STORAGE VOR V82.
RINIT ERASE +5 # I(6) ACTIVE VEHICLE POSITION
VINIT ERASE +5 # I(6) ACTIVE VEHICLE VELOCITY
VIPRIME ERASE +5 # I(6) NEW VEL REQUIRED AT INITIAL RADIUS.
CDUANG EQUALS GENPL +71D
# Page 128
AINLA = GENPL # 110 DEC OR 156 OCT LOCATIONS
WANGO EQUALS AINLA # VERT ERATE
WANGI EQUALS AINLA +2D # HORIZONTAL ERATE
WANGT EQUALS AINLA +4D # T
TORQNDX = WANGT
DRIFTT EQUALS AINLA +6D
ALX1S EQUALS AINLA +8D
CMPX1 EQUALS AINLA +9D # IND
ALK EQUALS AINLA +10D # GAINS
VLAUNS EQUALS AINLA +22D
WPLATO EQUALS AINLA +24D
INTY EQUALS AINLA +28D # SOUTH IP INTE
ANGZ EQUALS AINLA +30D # EAST A IS
INTZ EQUALS AINLA +32D # EAST P P I
ANGY EQUALS AINLA +34D # SOUTH
ANGX EQUALS AINLA +36D # VE
DRIFTO EQUALS AINLA +38D # VERT
DRIFTI EQUALS AINLA +40D # SOU
VLAUN EQUALS AINLA +44D
ACCWD EQUALS AINLA +46D
POSNV EQUALS AINLA +52D
DPIPAY EQUALS AINLA +54D # SOUTH
DPIPAZ EQUALS AINLA +58D # NORTH IP INCREMENT
ALTIM EQUALS AINLA +60D
ALTIMS EQUALS AINLA +61D # INDEX
ALDK EQUALS AINLA +62D # TIME ONSTAN
DELM EQUALS AINLA +76D
WPLATI EQUALS AINLA +84D
GEOCOMPS EQUALS AINLA +86D
ERCOMP EQUALS AINLA +87D
ZERONDX EQUALS AINLA +93D
THETAN = ALK +4
FILDELV EQUALS THETAN +6 # AGS ALIGNMENT STORAGE
INTVEC EQUALS FILDELV +2 1SECXT = AINLA +94D
ASECXT = AINLA +95D
PERFDLAY EQUALS AINLA +96D # B(2) DELAY TIME BEF. START DRIFT MEASURE
OVFLOWCK EQUALS AINLA +98D # (1) SET MEANS OVERFLOW IN IMU PERF TEST
END-E5 EQUALS STARSAV2 +6 # *** FIRST FREE LOCATION IN E5 ***
# Page 129
# EBANK-6 ASSIGNMENTS.
SETLOC 3000
# DAP PAD-LOADED DATA. (10D)
# ALL OF THE FOLLOWING EXCEPT PITTIME AND ROLLTIME ARE INITIALIZED IN FRESH START TO PERMIT IMMEDIATE USE OF DAP.
HIASCENT ERASE # (1) MASS AFTER STAGING, SCALE AT B16 KG.
ROLLTIME ERASE # (1) TIME TO TRIM Z GIMBAL IN R03, CSEC.
PITTIME ERASE # (1) TIME TO TRIM Y GIMBAL IN R03, CSEC.
DKTRAP ERASE # (1) DAP STATE (POSSIBLE 77001
DKOMEGAN ERASE # (1) ESTIMATOR PARA- (VALUES 00012
DKKAOSN ERASE # (1) METERS FOR THE 00074
LMTRAP ERASE # (1) DOCKED AND 77001
LMOMEGAN ERASE # (1) LEM-ALONE CASES 00000
LMKAOSN ERASE # (1) RESPECTIVELY 00074
DKDB ERASE # (1) WIDTH OF DEADBAND FOR DOCKED RCS
# AUTOPILOT (DB=1.4DEG IN FRESH START
# DEADBAND = PI/DKDB RAD.
# PADLOADS FOR INTITIALIZATION OF DAP BIAS ACCELERATION (AT P12 IGNITION) (2D)
IGNAOSQ ERASE # B(1)PL
IGNAOSR ERASE # B(1)PL
# AXIS TRANSFORMATION MATRIX -- GIMBAL TO PILOT AXES: (5D)
M11 ERASE # SCALED AT 1
M21 ERASE # SCALED AT 1
M31 ERASE
M22 ERASE # SCALED AT 1.
M32 ERASE # SCALED AT 1.
# ANGLE MEASUREMENTS
OMEGAP ERASE +4 # BODY-AXIS ROT. RATES SCALED AT PI/4 AND
OMEGAQ EQUALS OMEGAP +1 # BODY-AXIS ACCELERATIONS SCALED AT PI/8.
OMEGAR EQUALS OMEGAP +2
# RETAIN THE ORDER OF ALPHAQ AND ALPHAR FOR DOWNLINK PURPOSES.
ALPHAQ EQUALS OMEGAP +3
ALPHAR EQUALS OMEGAP +4
OMEGAU ERASE +1
OMEGAV = OMEGAU +1
DPSBURN EQUALS DAPTREG4 # USED WITH SNUFFBIT. VERY TEMPORARY.
# Page 132
# TRIM GIMBAL CONTROL LAW ERASABLES: (11D)
GTSTEMPS EQUALS DAPTEMP1 # GTS IS PART OF THE JASK.
SHFTFLAG EQUALS GTSTEMPS +2 # COUNT BITS FOR GTSQRT SHIFTING.
ININDEX EQUALS GTSTEMPS +5 # INDEX FOR SHIFT LOOP IN GTSQRT.
SAVESR EQUALS AXISCTR # CANNOT BE A DAPTEMP -- GTS USES THEM ALL.
K2THETA EQUALS GTSTEMPS # D,P., K*ERROR, NEGUSUM
KCENTRAL EQUALS GTSTEMPS +2 # S.P., K FROM KQ OR KRDAP, AT PI/2(8)
K2CNTRAL EQUALS GTSTEMPS +3 # D.P., GTS SCRATCH CELLS.
WCENTRAL EQUALS GTSTEMPS +4 # S.P., OMEGA, AT PI/4 RAD/SEC
ACENTRAL EQUALS GTSTEMPS +5 # S.P., ALPHA, AT PI/4 RAD/SEC(2)
DEL EQUALS GTSTEMPS +6 # S.P., SGN FUNCTION VALUE.
A2CNTRAL EQUALS GTSTEMPS +7 # D.P., GTS SCRATCH CELLS.
QRCNTR EQUALS GTSTEMPS +9D # S.P., INDEX FOR GTS LOOP THROUGH Q,R AXES
FUNCTION EQUALS GTSTEMPS +10D # D.P., ARGUMENT FOR GRSQRT, SCRATCH FOR GTS.
NEGUQ ERASE +2 # NEGATIVE OF Q-AXIS GIMBAL DRIVE.
EQUALS NEGUQ +1 # DEFINED AND USED ELSEWHERE.
NEGUR EQUALS NEGUQ +2 # NEGATIVE OF R-AXIS GIMBAL DRIVE.
KQ ERASE +2 # S.P., JERK TERM FOR GTS, AT PI/2(8)
AXISCTR EQUALS KQ +1
KRDAP EQUALS KQ +2 # .3 ACCDOTR SCALED AT PI/2(8)
ACCDOTQ ERASE +3 # Q-JERK SCALED AT PI/2(7) UNSIGNED
QACCDOT EQUALS ACCDOTQ +1 # Q-JERK SCALED AT PI/2(7) SIGNED
ACCDOTR EQUALS ACCDOTQ +2 # R-JERK SCALED AT PI/2(7) UNSIGNED
RACCDOT EQUALS ACCDOTQ +3 # R-JERK SCALED AT PI/2(7) SIGNED
QDIFF EQUALS QERROR # ATTITUDE ERRORS:
RDIFF EQUALS RERROR # SCALED AT PI RADIANS.
# TORQUE VECTOR RECONSTRUCTION VARIABLES: (18D)
JETRATE EQUALS DAPTREG1
JETRATEQ EQUALS JETRATE +1 # THE LAST CONTROL SAMPLE PERIOD OF 100 MS.
JETRATER EQUALS JETRATE +2 # SCALED AT PI/4 RADIANS/SECOND
DOWNTORK ERASE +5 # ACCUMULATED JET TORQUE COMMANDED ABOUT
POSTORKP EQUALS DOWNTORK # +,-p, +,-u, +,-v RESPECTIVELY.
NETTOTKP EQUALS DOWNTORK +1 # EMPLOYED EXCLUSIVELY FOR DOWNLIST.
POSTORKU EQUALS DOWNTORK +2 # NOT INITIALIZED: PERMITTED TO OVERFLOW.
# Page 133
NEGTORKU EQUALS DOWNTORK +3 # SCALED AT 32 JET-SEC, OR ABOUT 2.0 JET-
POSTORKV EQUALS DOWNTORK +4 # MSEC. PER BIT.
NEGTORKV EQUALS DOWNTORK +5
L,PVT-CG ERASE 1JACC ERASE +4 # ACCELERATIONS DUE TO 1 JET TORQUING 1JACCQ EQUALS 1JACC +1 # SCALED AT PI/4 RADIANS/SECOND 1JACCR EQUALS 1JACC +2 1JACCU EQUALS 1JACC +3 # FOR U,V-AXES THE SCALE FACTOR IS DOFF: 1JACCV EQUALS 1JACC +4 # SCALED AT PI/2 RADIANS/SECOND (FOR ASC)
# ASCENT VARIABLES (10D)
SKIPU ERASE +1
SKIPV = SKIPU +1
# THE FOLLOWING LM DAP ERASABLES ARE ZEROED IN THE STARTDAP SECTION OF THE DAPIDLER PROGRAM AND THE COASTASC
# SECTION OF THE AOSTASK. THE ORDER MUST BE PRESERVED FOR THE INDEXING METHODS WHICH ARE EMPLOYED IN THOSE
# SECTIONS AND ELSEWHERE.
AOSQ ERASE +5 # OFFSET ACC. ESTIMATES, UPDATED IN D.P.,
AOSR EQUALS AOSQ +2 # AND SCALED AT PI/2.
AOSU EQUALS AOSQ +4 # UV-AXES OFFSET ACC. FROMED BY VECTOR
AOSV EQUALS AOSQ +5 # ADDITION OF Q,R. AT PI/2 RAD/SEC(2).
#NUMBERT EQUALS DAPTEMP5 # DEFINED IN QRAXIS.
EDOTSQ EQUALS DAPTEMP1
ROTSENSE EQUALS DAPTEMP2
FIREFCT EQUALS DAPTEMP3 # LOOKED AT BY PAXIS.
TTOAXIS EQUALS DAPTEMP4
ADRSDIF2 EQUALS DAPTEMP6
HOLDQ EQUALS DAPTREG1
ADRSDIF1 EQUALS DAPTREG2
HH EQUALS DAPTREG3 # DOUBLE PRECISION.
# HH +1 EQUALS DAPTREG4
E EQUALS DAPTREG6 # TIME SHARE WITH VERROR
EDOT EQUALS OMEGAV
# Page 134
# INPUT TO TJET LAW (PERMANENT ERASABLES). (48D)
TJETU = TJU # EQUATE NAMES. INDEXED BY -1, 0, +1.
BLOCKTOP ERASE +47D 1/ANET1 = BLOCKTOP +16D # THESE 8 PARAMETERS ARE SET UP BY 1/ACCS 1/ANET2 = 1/ANET1 +1 # FOR MINIMUM JETS ABOUT THE U-AXIS WHEN 1/ACOAST = 1/ANET1 +4 # EDOT IS POSITIVE. TJETLAW INDEXES BY
ACCFCTZ1 = 1/ANET1 +6 # ADRSDIFF FROM THESE REGISTERS TO PICK UP
ACCFCTZ5 = 1/ANET1 +7 # PARAMETERS FOR THE PROPER AXIS, NUMBER
FIREDB = 1/ANET1 +10D # OF JETS AND SIGN OF EDOT. THERE ARE 48
COASTDB = 1/ANET1 +12D # REGISTERS IN ALL IN THIS BLOCK.
AXISDIST = 1/ANET1 +14D # FOUR NOT REFERENCED (P-AXIS) ARE FILLED
# IN BY THE FOLLOWING:
ACCSWU = BLOCKTOP # SET BY 1/ACCS TO SHOW WHETHER MAXIMUM
ACCSWV = ACCSWU +1 # JETS ARE REQUIRED BECAUSE OF AOS.
FLAT = BLOCKTOP +6 # WIDTH OF MINIMUM IMPULSE ZONE.
ZONE3LIM = BLOCKTOP +7 # HEIGHT OF MINIMUM IMPULSE ZONE (AT 4 SEC.)
COEFFQ ERASE +1 # COEFFQ AND COEFFR ARE USED IN ROT-TOUV
COEFFR EQUALS COEFFQ +1 # TO REXOLVE Q,R COMPONENTS INTO U,V COMP.
# VARIABLES FOR GTS-QRAXIS CONTROL EXCHANGE. (4)
ALLOWGTS EQUALS NEGUQ +1 # INSERT INTO UNUSED LOCATION
COTROLER ERASE # INDICATES WHICH CONTROL SYSTEM TO USE.
QGIMTIMR ERASE +2 # Q-GIMBAL DRIVE ITMER, DECISECONDS.
INGTS EQUALS QGIMTIMR +1 # INDICATOR OF CURRENT GTS CONTROL.
RGIMTIMR EQUALS QGIMTIMR +2 # R-GIMBAL DRIVE TIMER, DECISECONDS.
# PLEASE RETAIN THE ORDER OF CDUXD THRU CDUZD FOR DOWNLINK PURPOSES.
# KALCMANU:DAP INTERFACE (9D)
CDUXD ERASE +2 # CDU DESIRED REGISTERS:
CDUYD EQUALS CDUXD +1 # SCALED AT PI RADIANS (180 DEGREES)
CDUZD EQUALS CDUXD +2 # (STORE IN 2'S COMPLEMENT)
DELCDUX ERASE +2 # NEGATIVE OF DESIRED 100MS CDU INCREMENT:
DELCDUY EQUALS DELCDUX +1 # SCALED AT PI RADIANS (180 DEGREES)
DELCDUZ EQUALS DELCDUX +2 # (STORE IN 2'S COMPLEMENT)
# RETAIN THE ORDER OF OMEGAPD TO OMEGARD FOR DOWNLINK PURPOSES.
TMIS EQUALS KDPNDX +1 # I(18) MUST BE IN SAME BANK AS RCS DAP
COFSKEW EQUALS TMIS +18D # I(6) MUST BE IN THE SAME BANK AS RCS DAP
CAM EQUALS COFSKEW +6 # I(2) MUST BE IN THE SAME BANK AS RCS DAP
AM ERASE +1 # I(2) THIS WAS ONCE IN E5 OVERLAYING OGC
# FIRST-ODER OVERLAYS IN KALCMANU (25D)
KV1 EQUALS TMIS # I(6)
MFISYM EQUALS TMIS # I
TMFI EQUALS TMIS # I
NCDU EQUALS TMIS # B
NEXTIME EQUALS TMIS +3 # B
TTEMP EQUALS TMIS +4 # B
KV2 EQUALS TMIS +6 # I(6)
BIASTEMP EQUALS TMIS +6 # B
KV3 EQUALS TMIS +12D # I(6)
OGF EQUALS TMIS +12D # I
# THE FOLLOWING ARE THE DAP REPLACEMENTS FOR THE ITEMPS AND RUPTREGS, NEEDED BECAUSE DAP IS NOW A TOB,JASK,JAB,TOSK
# ... ANYWAY, THE DAP CAN NOW BE INTERRUPTED. (18D)
TSTRT EQUALS DELDV # MIDCOURSE START TIME
TDEC2 EQUALS DELVCSI # TEMP STORAGE FOR INTEGRATION TIME INPUT
KT EQUALS DELVTPI # TEMP STORAGE FOR MIDCOURSE DELTA TIME
VACT1 ERASE +5D # VELOCITY VECTOR OF ACTIVE AT CSI TIME
RPASS1 ERASE +5D # POSITION VECTOR OF PASSIVE AT CSI TIME
VPASS1 ERASE +5D # VELOCITY VECTOR OF PASSIVE AT CSI TIME
VACT2 ERASE +5D # VELOCITY VECTOR OF ACTIVE AT CDH TIME
RPASS2 ERASE +5D # POSITION VECTOR OF PASSIVE AT CDH TIME
VPASS2 ERASE +5D # VELOCITY VECTOR OF PASSIVE AT CDH TIME
RACT3 ERASE +5D # POSITION VECTOR OF ACTIVE AT TPI TIME
VACT3 ERASE +5D # VELOCITY VECTOR OF ACTIVE AT TPI TIME
RPASS3 ERASE +5D # POSITION VECTOR OF PASSIVE AT TPI TIME
VPASS3 ERASE +5D # VELOCITY VECTOR OF PASSIVE AT TPI TIME
VACT4 ERASE +5D # VELOCITY VECTOR OF ACTIVE AT INTERCEPT
UNVEC EQUALS VACT3 # CDHMVR UNIT VECTOR TEMP STORAGE.
DELVCSI ERASE +1D # THRUST VALUE AT CSI
DELVTPI ERASE +1D # THRUST VALUE AT TPI OR MID
DELVMID EQUALS DELVTPI
DIFFALT ERASE +1D # ALT DIFFERENT AT CDH
POSTCSI ERASE +1 # PERIGEE ALTITUDE AFTER CSI MANEUVER
POSTCDH ERASE +1 # PERIGEE ALTITUDE AFTER CDH MANEUVER
POSTTPI ERASE +1 # PERIGEE ALTITUDE AFTER TPI MANEUVER
LOOPCT EQUALS POSTTPI # CSI NEWTON ITERATION COUNTER
HAFPA1 EQUALS POSTCDH # HALF PERIOD
GAMPREV ERASE +1 # PREVIOUS GAMMA
DVPREV EQUALS DELVTPI # PREVIOUS DELVCSI
DELDV ERASE +1D
CSIALRM ERASE +1 # FIRST SOLUTION ALARM
VERBNOUN ERASE
TITER EQUALS CSIALRM # ITERATION COUNTER
RDOTV ERASE +1
VAPREC EQUALS VPASS1 # I(6) S-S PREC VEC FOR NOM TPI TIME (ACTIVE)
RAPREC EQUALS RPASS1 # I(6) S-S PREC VEC FOR NOM TPI TIME (ACTIVE)
VPPREC EQUALS VPASS2 # I(6) S-S PREC VEC FOR NOM TPI TIME (PASSIVE)
RPPREC EQUALS RPASS2 # I(6) S-S PREC VEC FOR NOM TPI TIME (PASSIVE)
DELEL EQUALS DELVTPI # I(2) S-S
DELTEE EQUALS DELDV # I(2) S-S
SECMAX EQUALS DELVCSI # I(2) S-S MAX STOP SIZE FOR ROUTINE
DELTEEO EQUALS POSTTPI # I(2) S-S BACK VALUES OF DELTA TIME
CENTANG ERASE +1 # I(2) CENTRAL ANGLE COVERED (TPI-TPF)
# Page 142
# SOME P47 STORAGE (6D)
DELVIMU ERASE +5 # I(6)DSP NOUN 83 FOR P47 DELTA V (IMU)
# P30-P40 COMMON STORAGE. (3D)
TPASS4 ERASE +1 # INTERCEPT TIME
QTEMP ERASE # I(1)TMP COMMON RETURN SAVE REGISTER.
# P32,33,34 STORAGE. (6D)
TCSI ERASE +1 # B(2)TMP CSI TIME IN CENTISECONDS
TTPI ERASE +1 # B(2)TMP TPI TIME IN CENTISECONDS
TTPIO ERASE +1 # B(2)TMP TTPI STORAGE FOR RECYCLE
R65CNTR EQUALS RRBORSIT +5 # B(1)SS COUNT NUMBER OF TIMES PREFERRED
# TRACKING ROUTINE IS TO CYCLE
WHCHREAD EQUALS R65CNTR # TELLS WHICH RR DATA TRIGGERED N49 DISPLAY
# P21 STORAGE (2D)
P21TIME EQUALS RANGRDOT +2 # I(2)TMP
# KALCMANU, VECPOINT STORAGE. CALLED BY R63, R61, R65. (12D)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.