# Copyright: Public domain. # Filename: P40-P47.agc # Purpose: Part of the source code for Colossus 2A, AKA Comanche 055. # It is part of the source code for the Command Module's (CM) # Apollo Guidance Computer (AGC), for Apollo 11. # Assembler: yaYUL # Contact: Ron Burkey <info@sandroid.org>. # Website: www.ibiblio.org/apollo. # Pages: 684-736 # Mod history: 2009-05-11 RSB Adapted from the Colossus249/ file # of the same name, using Comanche055 page # images. # 2009-05-20 RSB In S20.1, a DMP DDV was corrected to DMPR DDV. # 2009-05-22 RSB In BESTTRIM, TC PACTOFF corrected to # TS PACTOFF. # 2009-05-23 RSB Prior to the 2CADR at T5IDLDAP, added an # SBANK. # # 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 055 of AGC program Comanche by NASA # 2021113-051. 10:28 APR. 1, 1969 # # This AGC program shall also be referred to as # Colossus 2A
# Page 684 # PROGRAM DESCRIPTION ** P40CSM **
EBANK= DAPDATR1 BANK31 SETLOC P40S BANK
COUNT24/P40
P40CSM TC DOWNFLAG ADRES ENG2FLAG
TC INTPRET SLOAD BOFF
ECSTEER # IS THIS AN EXTERNAL DELTA V BURN
XDELVFLG
P40S/C # NO CSTEER = ECSTEER DLOAD# YES CSTEER = ZERO
HI6ZEROS
P40S/C STODL CSTEER
FENG # SET UP THRUST FOR P40 20,000 LBS
P40S/F STODL F # P41 ENTERS HERE
TIG # ORIGINAL TIG MAY BE SLIPPED BY P40S/SV STORE NOMTIG # SET ORIGINAL TIME OF IGNITION FOR S40.9
P40TTOG CAF V06N40 # INITIALIZE FOR CLOCKTASK WHICH IS CALLED # Page 685 TS NVWORD1 # BELOW
TC INTPRET
VLOAD ABVAL # FOR R2
VGTIG STODL VGDISP
HI6ZEROS STORE DVTOTAL EXIT
EXTEND DCA STEERADS # SET FOR UPDATEVG AND TEST FOR STEERING DXCH AVEGEXIT # AFTER AVERAGE G
P40GMB CAF P40CKLS2 # (4.1 PROTECTION) TC BANKCALL CADR GOPERF1 TCF POST41 # V34 TCF TST,TRIM # V33
TRIMONLY CS BIT1 # SET MRKRTEMP FOR GIMBAL TRIM (-1)
+1TS MRKRTMP # ENTRY FROM TST,TRIM
CAF ZERO # SET CNTR +0 FOR RESTART LOGIC IN S40.6 TS CNTR # +0 SAYS NORMAL ENTRY # +1 (PRE40.6) SAYS RESTART ENTRY
CAF ONE TC WAITLIST EBANK= DAPDATR1 2CADR S40.6
CCS MRKRTMP # TEST TO FIND TIME TO WAIT FOR GIMBAL TEST CAF18SEC # PLUS, DELAY FOR 18 SECONDS TCF +2# HOLE CAF5SEC # DELAY FOR TRIM ONLY TASK TC BANKCALL CADR DELAYJOB TC2PHSCHNG OCT40026# 6.2 = PRE40.6(-0CS), CLOKTASK(100CS) OCT00234# 4.23 = P40S/SV (PRIO12)
P40S/RS CAF ONE TC WAITLIST # P41/SDP EBANK= TIG 2CADR CLOKTASK
MINDB DEC46
MAXDB DEC455 EBANK= DAPDATR1
-1INHINT
SETMINDB CA CDUX # ROUTINE FOR SETTING TS THETADX # THE MINIMUM DEADBAND EXTEND# IN AUTOPILOT DCA CDUY DXCH THETADY CA MINDB # SHOULD BE CALLED UNDER TS ADB # INTERRUPT INHIBITED CS BIT4 # EBANK = E6 MASK DAPDATR1 TS DAPDATR1 TC Q
EBANK= DAPDATR1
-1INHINT
SETMAXDB CA MAXDB # ROUTINE FOR SETTING TS ADB # THE MAXIMUM DEADBAND IN AUTOPILOT CS DAPDATR1 MASK BIT4 # SHOULD BE CALLED UNDER ADS DAPDATR1 # INTERRUPT INHIBITED TC Q # EBANK = E6
# Page 688 # PROGRAM DESCRIPTION ** P41CSM **
SETLOC P40S2 BANK
EBANK= DAPDATR1 COUNT24/P41
P41CSM TC UPFLAG ADRES ENG2FLAG # SET FOR RCS
TC INTPRET DLOAD
HI6ZEROS # FOR P41 CSTEER =0 STORE CSTEER
3MDOT DEC86.6175796 B-16# 3SEC MASS LOSS (63.8 LBS/SEC), SC.AT # B+16 KB/SEC (NOT, EMDOT IS PAD-LOADED, # BUT 3MDOT IS NOT A CRITICAL QUANTITY, SO # IT CAN REMAIN IN FIXED MEMORY)
TST,TRIM CAF BIT1 # SET UP FOR GIMB DRIVE TEST AND TRIM (+1) TCF TRIMONLY +1
TIGBLNK CAF5SEC # CALL TIGAVEG IN FIVE SEC AT TIG-30 TC WAITLIST EBANK= TIG 2CADR TIGAVEG
CAF ZERO # DISABLE HERE, NOT IN P40BLNKR TS NVWORD1
EBANK= TIG
P47CSM TC BANKCALL # IMU STATUS CHECK CADR R02BOTH TC INTPRET
CALRB
MIDTOAV2 CA MPAC +1# DELTA TIME TO RPEREAD (LESS THAN 100 TS P40TMP # CS, WITH A TPAGREE, INT.INIT.) TC WAITLIST EBANK= TIG 2CADR TIGON # TIGON IS REQUIRED TO MATHCHTAT AND AVEG
CAF POSMAX # SET TIME5 FOR STARTING RIGHT AWAY TS TIME5 EXTEND DCA TVCON2C # (TVCDAPON) DXCH T5LOC # (KILLS RCS DAP)
TC FIXDELAY # 0.4 + 1.6 = 2.0 SEC FOR ULLAGE-OFF AND DEC160# STEERING (IF NON-IMPULSIVE)
DOSTRULL CAF BIT13 # CHECK STRULLSW FOR IMPULSIVE BURN MASK FLAGWRD6 CCS A
TCR STEERULL # NON-IMPULSIVE, STEERING AND ULLAGE OFF
TCR ULAGEOFF # ULLAGE OFF (ONLY, OR AGAIN)
CAF BIT14 # ISSUE SIV CUTOFF COMMAND EXTEND# FOR POSSIBLE BACK-UP USE WOR CHAN12
MASSBACK CAE V97VCNTR # RESTORE PART OF PRE-DECREMENTED MASS # V97CNTR = VCNTR UNLESS V97 IS # ACTIVE. ONLY V97CNTR IS THEN RIGHT. EXTEND# VCNTR COUNTS 1/2-SECONDS IN TVC EXEC MP EMDOT # MDOT, SC.AT B+3 KG/CS LXCH A # Page 699 EXTEND MP1SEC # DEC 100 AD MASSTMP # CORRECTION IS ACCURATE TO 5 CS OF FLOW TS CSMMASS # (1.44 KG OR 0.4 BITS)
CA TVCPHASE # CHECK IF OK FOR TRIM UPDATE AD ONE # THESE CHECKS ARE ONLY NEEDED EXTEND# FOR A LESS THAN 0.4 SEC BURN BZF BTRIMR # NO. INITIALIZATION NOT COMPLETE CS FLAGWRD6 # YES, CHECK IF TVC MASK OCT60000 EXTEND BZMF BTRIMR # NO, NOT TVC YET
BESTTRIM CAE DELPBAR # UPDATE TRIMS WITH DELFILTER VALUES TS PACTOFF
CAE DELYBAR TS YACTOFF
BTRIMR TC Q EBANK= DAPDATR1
STEERADS 2CADR STEERING
TC2PHSCHNG OCT00051# A, 1.5 = REDO40.9, PRIO 10 OCT10035 TC INTPRET
VLOAD
RN # ACTIVE VEHICLE RADIUS VECTOR AT T1 STOVL RINIT # Page 701 VN# ACTIVE VEHICLE VELOCITY VECTOR AT T1 STODL VINIT
PIPTIME STORE TNIT
BDSU
TPASS4 STOVL DELLT4
HI6ZEROS STODL DELVSUM
HI6ZEROS STORE NBRCYCLS
GOTO
CALL40.8 EBANK= DAPDATR1
STEERING TC INTPRET CALL
UPDATEVG EXIT CAF BIT9 # CHECK IMPULSW MASK FLAGWRD2 CCS A TCF +3# PRE-IGNITE, REQUEST ENG-OFF, OR POST-OFF
SERVXT TC POSTJUMP CADR SERVEXIT CAF BIT13 # CHECK ENGINE-ON/-OFF EXTEND
RAND DSALMOUT EXTEND BZF SERVXT # ENGINE-OFF, SO PRE-IGNITE OR POST-OFF
TCR E7SETTER EBANK= TIG INHINT EXTEND DCA TIG DXCH MPAC EXTEND
DCS TIME2 DAS MPAC
TCR DPAGREE
CAE MPAC +1# (LESS THAN 6 (OR 4) SECONDS TO GO) CCS A # PROTECT AGAINST NEG/ZRO W.L. CALL TCF +3 TCF +2 CAF ZERO AD ONE XCH L CA ZERO DXCH TGO CA TGO +1 TC WAITLIST # Page 702 EBANK= TGO 2CADR ENGINOFF
TC2PHSCHNG OCT40153# A, 3.15 = ENGINOFF (TGO+1) .... NOTE GROUP OCT10035# B, 5.3 = REREADAC, AND START BELOW TC DOWNFLAG # CLEAR IMPULSW, ENGINOFF IS NOW SET UP ADRES IMPULSW # RESTARTS OK TCF SERVXT
# Page 703 # ROUTINE ** CLOKTASK ** DESCRIPTION
EBANK= TIG
CLOKTASK CAF BIT11 # IS TIMRFLAG SET MASK FLAGWRD7 CCS A TCF CLOCKON TC PHASCHNG OCT00006# KILL RESTART TC TASKOVER
SETUPDYN CAF PRIO27 # SET UP A JOB TO UPDATE N85 (FOR P41=V06) TC FINDVAC EBANK= DAPDATR1 2CADR DYNDISP
TCF SETTB6 # CLOSE OUT CLOCKTASK # Page 704
DYNDISP TC INTPRET # UPDATE N85 FOR A DYNAMIC V06N85 IN P41. CALL# PRIOR TO BLANKING AND AVEG (V16N85)
P40CNV85 EXIT TCF CKNVWRD1
V99P INHINT
CAE FLAGWRD7 # CHECK ASTN FLAG FOR PRIOR V99P MASK BIT12 CCS A TCF V99P/TIG # YES, THIS MUST BE A RESTART ENTRY
ASTNV99P CAF BIT12 # SET ASTN FLAG ADS FLAGWRD7
CAE FLAGWRD7 # CHECK IGN FLAG FOR TIG-0 ARRIVAL MASK BIT13 EXTEND BZF V99P/TIG # NO, CLEAR THE V99 AND WAIT FOR TIG-0
ENDV99PI CAF BIT1 # TIG-0 HAS COME ALREADY TC WAITLIST # SET UP IGNITION HERE EBANK= DAPDATR1 2CADR IGNITION
V99P/TIG CAF V06N40 # CLEAR THE V99 FLASH AND WAIT FOR TIG-0 TS NVWORD1
ENDV99P TCF ENDOFJOB
EBANK= CSMMASS
V97T TC2PHSCHNG OCT00006# KILL GROUP 6 (CLOKTASK) OCT40674# A, 4.67 = V97TTASK (-0 CS), TBASE NOW CAF BIT1 TC TWIDDLE ADRES V97TTASK # KEEP EBANK6 FOR MASSES, SPSOFF, ETC. TCF ENDOFJOB
EBANK= CSMMASS
V97TTASK CAF ZERO # DISABLE CLOCKJOB TS NVWORD1 CAF3MDOT # 3 SECONDS OF MDOT (2-4 SEC ENGFAIL AD CSMMASS # DETECTION) NOT LOST BECAUSE THRUST TS MASSTMP # FAILED. COPYCYCLE FOR MASSBACK # Page 707 TC PHASCHNG OCT05014# C, DELTAT NEXT, TASK BELOW, IN DEC -0# -0 CS
TCR SPSOFF # SHUTDOWN SPS ENGINE, MASS UPDATE, ETC. TC PHASCHNG OCT00714# A, 4.71 = V97TRCS (250 CS), TBASE OLD TC FIXDELAY # DELAY 2.5 SECONDS FOR (POSSIBLE) TAIL- DEC250# OFF (FALSE THRUST-LOSS)
EBANK= DAPDATR1
V97TRCS TC IBNKCALL # RCS DAP IN 0.6SEC, SETTING T5 BITS TO CADR RCSDAPON # KILL TVCEXEC/TVCROLLDAP STARTS CAF PRIO27 # SET UP V99T FOR TVCZAP AND POST41 (SET- TC NOVAC # MAXDB AND GOTOPOOH) EBANK= DAPDATR1 # EBANK6 FOR SETMAXDB IN POST41 2CADR V99T
EBANK= V97VCNTR
V97PTASK CAE V97VCNTR # GET MASS UPDATES (TVCEXEC) GOING AGAIN TS VCNTR # (ERRORS IF FLASE THRUST-LOSS AND/OR # POOR SYNC OF MANUAL ENGINE-ON AND # THE VERB 97 PROCEED) CAF V06N40 # REDISPLAY V06N40 TS NVWORD1 TC UPFLAG # SET IDLEFAIL TO ALLOW R41-BYPASS, IN ADRES IDLEFAIL # CASE OF UNFAVORABLE S40.8 SYNCH TC UPFLAG # SET STEERSW TO RE-ENABLE STEERING ADRES STEERSW TC PHASCHNG OCT00134# A, 4.13 = R40ENABL (200 CS), TBASE OLD TC FIXDELAY # WAIT 2 SECONDS, THEN DEC200
EBANK= TIG
V97ETASK CS OCT24 # FORCE R1 OF V06N40 TO READ 59X59 TS TIG CAF V06N40 # REDISPLAY V06N40 TS NVWORD1
TCR E6SETTER # RETURN TO EBANK6 FOR REST OF V97ETASK EBANK= CSMMASS CAF3MDOT # 3 SECONDS OF MDOT (2-4 SEC ENGFAIL AD CSMMASS # DETECTION) NOT LOST BECAUSE THRUST TS MASSTMP # FAILED....COPYCYCLE FOR MASSBACK TC PHASCHNG OCT00754# A, 4.75 = SPSOFF97 (-0 CS), TBASE OLD
SPSOFF97 TCR SPSOFF TC PHASCHNG OCT00114# A, 4.11 = V97E40.6 (250 CS), TBASE OLD TC FIXDELAY # DELAY 2.5 SECONDS FOR (POSSIBLE) TAIL- DEC250# OFF (FALSE THRUST-LOSS)
EBANK= DAPDATR1
V97E40.6CAF BIT1 TC WAITLIST EBANK= CNTR 2CADR PRE40.6# USE S40.6 RESTART ENTRY TO TRIM ENGINE
TC IBNKCALL # RCS DAP IN 0.6SEC, SETTING T5 BITS TO CADR RCSDAPON # KILL TVCEXEC/TVCROLLDAP STARTS. # LEAVE NARROW DEADBAND FOR REIGNITE.
TC2PHSCHNG OCT00026# A, 6.2 = PRE40.6 (-0 CS), CLOKTASK (1 SEC) OCT05014# C, DELTAT NEXT, TASK BELOW, IN DEC -0# -0 CS.
QUICKIGN CS PRIO14 # CLEAR ASTNFLAG AND SET IGNFLAG FOR MASK FLAGWRD7 # IMMEDIATE V99 RESPONSE. AD BIT13 TS FLAGWRD7 TC FIXDELAY # DELAY TO ALLOW TIME FOR PRE40.6 # Page 709 DEC30
V99FLASH CS BIT9 # CAUSE V99 TO FLASH TS NVWORD1 TC2PHSCHNG OCT40774# A, 4.77 = TIG-0 (-0 CS) TBASE FOR PREPTVC OCT00033# A, 3.3 = S40.13 (PRIO 20) CAF PRIO20 # SET UP TIMEBURN TC FINDVAC EBANK= TGO 2CADR S40.13
ENDV97E TCF TASKOVER # WAIT FOR CLOCKJOB (IMMEDIATE) REACTION # TO FLASHING V99 RESPONSE.
# MOD N02 LOG SECTION P40-P47 # MOD BY ZELDIN # # FUNCTIONAL DESCRIPTION # COMPUTE INITIAL THRUST DIRECTION(UT) AND INITIAL VALUE OF VG # VECTOR(VGTIG). # # CALLING SEQUENCE # L CALL # L+1 S40.1 # # NORMAL EXIT MODE # AT L+2 OF CALLING SEQUENCE (GOTO L+2) NORMAL RETURN OR # ERROR RETURN IF NOSOFLAG =1 # # SUBROUTINES CALLED # CSMPREC # INITVEL # CALCGRAV # MIDGIM # # ALARM OR ABORT EXIT MODES # L+2 OF CALLING SEQUENCE, UNSOLVABLE CONIC IF NOSOFLAG=1 # # ERASABLE INITIALIZATION REQUIRED # WEIGHT/G ANTICIPATED VEHICLE MASS SP B16 KGM # XDELVFLG 1=DELTA-V MANEUVER, 0=AIMPT STEER # IF DELTA-V MANEUVER: # DELVSIN SPECIFIED DELTA-V REQUIRED IN # INERTIAL COORDS. OF ACTIVE VEHICLE # AT TIME OF IGNITION VECTOR B7 M/CS # DELVSAB MAG. OF DELVSIN DP B7 M/CS # RTIG POSITION AT TIME OF IGNITION VECTOR B29 M # VTIG VELOCITY AT TIME OF IGNITION VECTOR B7 M/CS. # CSTEER = 0 DP # IF AIMPOINT STEERING: # IF AIMPT STEER # TIG TIME OF IGNITION DP B28 CS # RTARG POSITION TARGET TIME VECTOR B29 M # CSTEER = ECSTEER (GR 0) DP B1 # Page 710 # TPASS4 -- TIME OF ARRIVAL AT AIMPOINT # # OUTPUT # UT 1/2 UNIT VECTOR ALIGNED WITH THRUST DIRETION IN REF COOR # VGTIG INITIAL VALUE OF VELOCITY # TO BE GAINED (INERT. COORD.) VECTOR B7 M/CS # DELVLVC VGTIG IN LOC. VERT. COORDS. B7 M/CS # F NOMINAL THRUST FOR ENG USED FOR S40.13 DP B7 M-NEWT # BDT V REQUIRED AT TIG -V REQUIRED AT (TIG-2SEC) # -GDT FOR S40.13 VECT B7 M/CS # RTIG CALC IN S40.1B (AIMPT) FOR S40.2,3 VECTOR B29M # POSITION AT TIME OF IGNITION # # DEBRIS QTEMP1 # MPAC, QPRET # PUSHLIST # RTX2,RTX1
BANK14 SETLOC P40S1 BANK
COUNT16/S40.1
S40.1 SET VLOAD
FIRSTFLG
LO6ZEROS STORE BDT
STQ BOF
QTEMP
XDELVFLG
S40.1B # LAMBERT
VLOAD ABVAL # EXTERNAL DELTA-V
DELVSIN STORE DELVSAB # COMPUTE FOR P30/P40 INTERFACE # THUS PERMITTING MODULE-ONLY CHANGE
SETPD VLOAD 0
VTIG STORE VINIT
VXV UNIT
RTIG STOVL UT # UP IN UT
RTIG STORE RINIT
VSQ PDDL 36D
DMPR DDV
THETACON
DMP DMP
DELVSAB
WEIGHT/G
DDV # Page 711
F STOVL14D
DELVSIN
DOT VXSC
UT
UT
VSL2 PUSH# (DELTAV.UP)UP SCALED AT 2(+7) P.D.L. 0 BVSU PDDL # DELTA VP SCALED AT 2(+7) P.D.L. 6
DELVSIN 14D
SIN PDVL 6D
VXV UNIT
UT VXSCSTADR STOVL VGTIG # UNIT(VP X UP)SIN(THETAT/2) IN VGTIG.
UNIT PDDL # UNIT(DELTA VP) IN P.D.L. 6 14D
COS VXSC
VAD VXSC
VGTIG 36D
VSL2 VAD STADR STORE VGTIG # VG IGNITION SCALED AT 2(+7) M/CS
UNIT STOVL UT # THRUST DIRECTION SCALED AT 2(+1)
VGTIG PUSH SET
AVFLAG CALL
MIDGIM # VGTIG IN LV COOR AT 2(+7)M/CS IN DELVLVC
GOTO
QTEMP
S40.1B DLOAD DSU # LAMBERT
TIG
TWODT STODL TDEC1
TPASS4
DSU
TDEC1
STCALL DELLT4
AGAIN
VLOAD
VIPRIME STODL UT
TIG STORE TDEC1 # Page 712
BDSU
TPASS4
STCALL DELLT4
AGAIN
VLOAD PUSH
DELVEET3 STORE VGTIG
SET CALL
AVFLAG
MIDGIM
SETPD GOTO 0
CALCUT
THETACON 2DEC .31830989 B-8
SETLOC P40S3 BANK
COUNT24/S40.1
EP4(45)H 2DEC .125
EP4(10)H 2DEC .027777777
AGAIN STQ CALL
QTEMP1
THISPREC
SXA,2 SXA,1
RTX2
RTX1
VLOAD
RATT STORE RTIG STOVL RINIT
VATT STORE VTIG STORE VINIT
SETPD SLOAD 0
HI6ZEROS
PDDL BON
EP4(45)H
NORMSW
+3 DLOAD
EP4(10)H PUSHCALL
INITVEL
SETPD GOTO # Page 713 0
QTEMP1
CALCUT VLOAD CALL
RTIG
CALCGRAV # GDELTAT IN MPAC AT 2(+7) M/CS
VSL1 V/SC 200CS# G AT 2(-5) M/CS. CS
PDVL VSU
VIPRIME
UT
V/SC VSU 200CS VXSC VSL2
CSTEER STOVL12D # B.C SCALED AT 2(-15) PDL 12D
VGTIG
UNIT PUSH# UG PDL 0 SCALED AT 2(+1)
DOT VXSC 12D 0
VSL2 BVSU 12D STODL12D # Q PDL SCALED AT 2(-5)
F
SRR DDV 4
WEIGHT/G
DSQ PDVL # F/MASS SQUARED PDL 6 AT 2(-10M/(CS.CS) 12D
VSQ
BDSU SQRT VXSC VSL1
VAD UNIT 12D
STCALL UT
QTEMP 200CS2DEC200 B-12
# Page 714 # PROGRAM DESCRIPTION S40.2,3 DATE 15 NOV 66 # MOD NO 2 LOG SECTIONS P40-P47 # MOD BY ZELDIN # # FUNCTIONAL DESCRIPTION # # COMPUTE GIMBAL ANGLES IF THRUSTING OCCURRED WITH PRESENT IMU # ORIENTATION, WINGS LEVEL SPACECRAFT, HEADS UP # COMPUTE X AXIS OF ENGINE BELL # COMPUTE PREFERRED IMU ORIENTATION (XSCREF) # FOR THIS CALCULATION, ASSUME X AXIS OF SC ALONG UT INITIALLY, # YSC=UNIT(XXR), ZSC=UNIT(XX(XXR)) AND ROTATE ENGINE BELL ALONG UT. # NEW SC AXES WILL BE APPROX. WINGS LEVEL AND NEW SC AXES IN REF. # COORDS. WILL BE PREFERRED IMU ORIENTATION. # COMPUTE DESIRED THRUST DIRECTION IN SM COORDS. # # CALLING SEQUENCE # L CALL # L+1 S40.2,3 # # NORMAL EXIT MODE # AT L+2 OF CALLING SEQUENCE (GOTO L+2) # # SUBROUTINES CALLED # CALCGA # # ALARM OR ABORT MODES # NONE # # ERASABLE INITIALIZATION REQUIRED # PACTOFF TOTAL PITCH TRIM ANGLE SP AT 1.0795111 REV. # YACTOFF TOTAL YAW TRIM ANGLE SP AT 1.0795111 REV. # UT DESIRED THRUST DIRECTION VECT. B2 M/(CS.CS) # RTIG POSITION AT TIME OF IGNITION VECT. B29 M # ENG2FLAG ON=RCS OFF=SPS # # OUTPUT # SCAXIS UNIT VECT. ALIGNED WITH ENG BELL IN SC COOR. B1 # XSCREF UNIT VECTORS ALIGNED WTH PREFERRED IMU B1 # YSCREF # ZSCREF # GIMBAL ANGLES IN THETAD # POINTVSM UNIT VECT ALONG DESIRED THRUST DIRECTION IN SM B1 # # DEBRIS # PUSHLIST, QPRET, MPAC # QTEMP TEMP. ERASABLE
BANK24 SETLOC P40S BANK COUNT* $$/S40.2
S40.2,3 VLOAD MXV
UT
REFSMMAT
VSL1 STQ
QTEMP STORE POINTVSM # THRUST IN SM AT 2
SETPD BON 0 # Page 715
ENG2FLAG
S40.2,3B DLOAD
HI6ZEROS PUSHSLOAD# ZERO PDL 0
YACTOFF
DMP SL1
TRIMSCAL
DAD PUSH
YBIAS
COS PDDL # COS(Y +Y0) PDL 2
SIN PUSH# SIN(Y +Y0) PDL 4 SLOAD
PACTOFF
DMP SL1
TRIMSCAL
DAD PUSH
PBIAS
COS PDDL # COS(P +P0) PDL 6
SIN PUSH# SIN(P +P0) PDL 8D STODL ZSCREF # SIN(P +P0) 6
DMP SL1 4
DCOMP PDDL # -SIN(Y+Y0)COS(P+P0) PDL 10 6
DMP SL1 2
VDEF
STODL XSCREF # PD POINTER AT 6 NEW SC X AXIS SCALED AT
ZSCREF
DMP SL1 4
PDDL DMP
ZSCREF 2
SL1 DCOMP
VDEF
STODL ZSCREF # PD POINTER AT 4 NEW SC Z AXIS SCALED AT 2
VDEF
STODL YSCREF # PD POINTER AT 0 NEW SC Y AXIS SCALED AT 2
ZSCREF
PDDL PDDL
YSCREF
XSCREF
VDEF # Page 716 STOVL SCAXIS # ENGINE BELL SCALED AT 2
UT
PDVL UNIT
RTIG
VXV VCOMP 0
UNIT PUSH CALL
TSTRXUT
VXV VCOMP 0
VSL1 PDVL # 2 RF/SC IN PDL 12D
XSCREF
VXM VSL1 0 STOVL XSCREF # X OF PREF. IMU,X OF SC IN REF COOR. AT 2
YSCREF
VXM VSL1 0 STOVL YSCREF # Y OF PREF. IMU,Y OF SC IN REF COOR. AT 2
ZSCREF
VXM VSL1 0 STORE ZSCREF # Z OF PREF. IMU,Z OF SC IN REF COOR. AT 2
SETPD GOTO 0
QTEMP
S40.2,3B VLOAD
UNITX STOVL SCAXIS
UT STORE XSCREF
VXV UNIT
RTIG
STCALL 6D
TSTRXUT STORE YSCREF
VXV VCOMP
XSCREF
VSL1
STCALL ZSCREF # ZNB AXIS IN REF COOR
QTEMP
TSTRXUT DLOAD BHIZ 36D
BADVCTOR
VLOAD RVQ 6D
BADVCTOR VLOAD UNIT
RTIG
PDVL UNIT # Page 717
VTIG
VSR3 VAD
VXV UNIT
UT
VCOMP STORE6D
RVQ
TRIMSCAL 2DEC1.07975111 B-1
# PROGRAM DESCRIPTION S41.1 DATE 8 DEC 66 # MOD NO 1 LOG SECTION P40-P47 # MOD BY ZELDIN # # FUNCTIONAL DESCRIPTION # # COMPUTE VELOCITY TO BE GAINED INITIALLY IN REF COORDS. # TO CONTROL COORDS. # # CALLING SEQUENCE # # L CALL # L+1 S41.1 # # NORMAL EXIT MODE # # AT L +2 OF CALLING SEQUENCE # # SUBROUTINES CALLED: # # CALCSMSC # CDUTRIG # # ALARM OR ABORT MODES # # NONE # # ERASABLE INITIALIZATION REQUIRED # # VG IN REF. COORD. PDL L POINTER AT L+5. S41.1 WILL RETURN WITH # POINTER AT L (L MUST BE LESS THAN OR = TO 14D) # # OUTPUT # # MPAC CONTAINS VG IN CONTROL COORDS VECT. B7 M/CS # # DEBRIS: # # QTEMP TEMP ERASABLE # QPRET
COUNT22/S41.1
SETLOC P40S5 BANK
S41.1 STQ CALL
QTEMP
CDUTRIG
VLOAD
MXV CALL
REFSMMAT
*SMNB* # Page 718
MXV VXSC
QUADROT
TENBNK14 # VG IN CONTROL COORD IN MPAC SCALED AT
VSL5 GOTO # VG IN CONTROL COORDS. IN MPAC AT 2(+7)
QTEMP
TENBNK14 2DEC10. B-4
# Page 719 # NAME S40.8 -- CROSS PRODUCT STEERING # FUNCTION (1) UPDATES THE VELOCITY-TO-BE-GAINED VECTOR. # (2) GENERATES ANGULAR RATE STEERING COMMANDS FOR AUTOPILOT. # (3) ESTABLISHES ENGINE CUT-OFF SIGNALS AT APPROPRIATE TIMES. # (4) INITIATES THRUST-FAIL ROUTINE, R40 # CALLING SEQ CALL S40.6 # INPUT VGPREV LAST VALUE OF THE VELOCITY-TO-BE-GAINED VECTOR # PRIOR TO UPDATING IN METERS/CS AT +7. # DELVREF CHANGE IN VEHICLE VELOCITY SINCE LAST MEASUREMENT # IN METERS/CS AT +7. # BDT EFFECT OF RATE OF CHANGE OF REQUIRED VELOCITY AND # GRAVITY DURING DT UPON VELOCITY-TO-BE-GAINED IN # METERS/CS AT +7. # CSTEER A SCALAR OF THE STEERING LAW, SC.AT B+1, USED FOR # SPS AIMPOINT STEERING MANEUVERS. # IDLEFAIL A FLAG TO INHIBIT (IDLE) THE THRUST-FAIL ROUTINE. # STEERSW A SWITCH TO PRECLUDE NEEDLESS CONDUCT OF STEERING. # REFSMMAT, DAPDATR1, PIPTIME # EREPFRAC, ETDECAY, KPRIMEDT FOR TVC. # OUTPUT TTOGO TIME REMAINING FOR ENGINE BURN IN CS AT +28. # OMEGAC DP VECTOR RATE COMMAND, SC.AT 1/(2TVCDT) REVS/SEC. # VG, VGPREV, VGDISP, TGO, TIG, SCALED AS NOTED IN CODING # STEERSW, IMPULSW, NVWORD1 # REPFRAC, CNTR, VCNTR, VCNTRTMP FOR TVC (R40 INTERFACING) # DEBRIS OMEGAXC, +1 # SUBROUTINES USED: *SMNB*, ALARM
S40.81 SET VLOAD # TGO LESS THAN 4 SECONDS
IMPULSW # FOR ENGINE-OFF CALL
HI6ZEROS
RATEZRO STORE OMEGAC # TVC TO ATTITUDE HOLD EXIT CAF POSMAX # INHIBIT SWITCHOVER/TVC EG TRACKING TS CNTR # Page 722 TC INTPRET
CLEAR GOTO
STEERSW # RESTARTS OK
QTEMP
INCRSVG EXIT# ALARM INDICATING THAT THRUST IS POINTING TC ALARM # IN WRONG DIRECTION. OCT01407 TC INTPRET
GOTO
QTEMP
LOTHRUST BON VLOAD # THRUST FAILURE (LO-OR-NO) INDICATED
IDLEFAIL # SET BY V97P. ALLOWS 1 BYPASS IN CASE OF
QTEMP # UNFAVORABLE S40.8 SYNCH.
HI6ZEROS # START OF ENGINE-FAIL (R40) OPERATIONS STORE OMEGAC # PUT TVC IN ATTITUDE HOLD EXIT
CS ZERO TS VCNTR # KILL CSMMASS UPDATING TS VCNTRTMP # (TVCEXEC LOGIC REQUIRES THIS TOO) TS REPFRAC # KILL TVCDAP CG TRIM TRACKING TS NVWORD1 # SET UP ENGINE-FAIL V97FLASH (CLOCKJOB)
TC INTPRET
CLEAR GOTO # INHIBIT STEERING AND TGO CALC (MANUAL
STEERSW # SHUTDOWN IF NOT SET UP AGAIN)
QTEMP # RESTARTS OK
# Page 723 # NAME S40.9 -- VTOGAIN (AIMPOINT MANEUVERS ONLY) # FUNCTION (1) GENERATES REQUIRED VELOCITY AND VELOCITY-TO-BE-GAINED # VECTORS FOR USE DURING AIMPOINT MANEUVERS. # (2) UPDATES THE B VECTOR WHICH IS USED IN THE FINAL # CALCULATION OF EXTRAPOLATING THE VELOCITY-TO-BE-GAINED. # CALLING SEQ VIA FINDVEC AS NEW JOB. # INPUT RNIT ACTIVE VEHICLE RADIUS VECTOR IN METERS AT +29. # VNIT ACTIVE VEHICLE VELOCITY VECTOR IN METERS/CS AT +7. # VRPREV LAST COMPUTED VELOCITY REQUIRED VECTOR IN # METERS/CS AT +7. # NONTIG TIME OF IGN. USED IN TARGETTING ROUTINES B+28 # DELLT4 TRANSFER TIME FROM PIPTIME TO TARGET B+28 # TNIT TIME OF RNIT AND VNIT IN CS AT +28 # GDT/2 HALF OF VELOCITY GAINED IN DELTA T TIME DUE TO # ACCELERATION OF GRAVITY IN METERS/CS AT +7. # DELVREF CHANGE IN VELOCITY DURING LAST 2 SEC IN # METERS/CS AT +7. # NORMSW SET=CENTRAL ANGLE BETWEEN RTARG AND RTIG IS BETWEEN # 165 TO 195 DEGREES. # RESET=CENTRAL ANGLE OUTSIDE CONE DESCRIBED ABOVE. # OUTPUT VGTEMP VELOCITY TO BE GAINED VECTOR IN METERS/CS AT +7. # COGA INPUT OF INITIAL GUESS FOR LAMBERT FROM S40.1 # OR PREVIOUS PASS THRU S40.9. # GOBL/2 OBLATENESS TERM IN AVG GRAV CALC: GOBL*RSQ/MU # VRPREV/ VELOCITY REQUIRED VECTOR IN METERS/CS AT +7. # BDT B VECTOR IN METERS/CS AT +7. # SUBROUTINES USED -- INITVEL
SETLOC P40S1 BANK
EBANK= NBRCYCLS COUNT16/S40.9
S40.9TC INTPRET
SETPD DLOAD 00D
LO6ZEROS
PDDL
EP4(45)L
BON DLOAD
NORMSW
+2
EP4(10)L PUSH
CLEAR CALL
GUESSW
HAVEGUES EXIT TC PHASCHNG # SAVE TIME BY NOT REDOING LAMBERT CALCS OCT05021# C, PRIORITY NEXT, JOB BELOW # Page 724 OCT10000 TC INTPRET
ENDLAMB BON
FIRSTFLG
FIRSTTME
VLOAD VSU
VIPRIME
VRPREV
PDDL DSU
TNIT
TNITPREV
SL BDDV 17D 200CSHI VXSC
VSU VSL1
GDT/2 STORE BDT
FIRSTTME SLOAD DCOMP
RTX2
BMN
MOONCASE
VLOAD UNIT
RN DLOAD DSU
PIPTIME
NOMTIG
DMP DDV
EARTHMU 34D VXSC VAD
GOBL/2
VGTEMP # NOTE: NO TEST IS MADE TO SUBTRACT GOBL STORE VGTEMP # INSIDE 165-195 DEGREE CONE AREA.
MOONCASE EXIT TC PHASCHNG OCT04021# C, JOB BELOW
COPY40.9TC INTPRET DLOAD
TNIT STOVL TNITPREV
VIPRIME STORE VRPREV
CLEAR EXIT
FIRSTFLG
-2CS ONE # REDO40.9 (RESTART) ENTRY TO END S40.9 TS NBRCYCLS
ENDS40.9TC PHASCHNG OCT00001 # Page 725 TCF ENDOFJOB
REDO40.9TC INTPRET # S40.9 RESTARTS COME HERE TO GRACEFULLY
VLOAD # TERMINATE S40.9 SO THAT IT CAN BE
LO6ZEROS # SET UP WITH LATEST R,V,T NEXT PASS STODL DELVSUM # (TYPE C PHASE POINTS '04021' WILL
LO6ZEROS # FORCE NORMAL S40.9 TERMINATIONS, STOVL NBRCYCLS # RATHER THAN LOSE TIME OF BRAND NEW
VGPREV # PASS -- QUICK OLD DATA BETTER THAN STORE VGTEMP # NONE) NOW CAN GO THRU SETUP.9 EXIT# WITHOUT DISTURBING VGPREV. TCF ENDS40.9 -2# STORE 0,0 COVERED NBRCYCLS,P -- FIX UP S
200CSHI 2DEC200 B-12
EARTHMU 2DEC* -3.986032 E10 B-36*
EP4(45)L 2DEC .125
EP4(10)L 2DEC .027777777
# Page 726 # NAME: S40.13 -- TIMEBURN # # FUNCTION (1) DETERMINE WHETHER A GIVEN COMBINATION OF VELOCITY-TO- # BE-GAINED AND ENGINE CHOICE RESULT IN A BURN TIME SUFFICIENT # TO ALLOW STEERING AT THE VEHICLE DURING THE BURN, AND # (2) THE MAGNITUDE OF THE RESULTING BURN TIME -- IF IT IS SHORT -- # AND THE ASSOCIATED TIME OF THE ENGINE OFF SIGNAL. # # CALLING SEQUENCE VIA FINDVAC AS A NEW JOB # # INPUT VGTIG -- VELOCITY TO BE GAINED VECTOR (METERS/CS) AT +7 # WEIGHT/G -- MASS OF VEHICLE IN KGM AT TIG # F -- ENGINE THRUST IN M.NEWTONS AT +7 # MDOT -- RATE OF DECREASE OF VEHICLE MASS DURING ENGINE BURN # IN KILOGRAMS/CENTISECOND AT +3. THIS SCALING MAY # REQUIRE MODIFICATION FOR SATURN BURNS. # # OUTPUT IMPULSW ZERO FOR STEERING # ONE FOR ATTITUDE HOLD # TGO TIME TO BURN IN CENTISECONDS AT +14 # THE QUANTITY M.NEWTON SHALL BE USED TO EXPRESS WEIGHT IN TERMS OF # (KILOGRAM*METER)/(CENTISECOND*CENTISECOND) # (1) M.NEWTON = (10000) NEWTONS.
EBANK= TGO COUNT16/40.13
S40.13TC INTPRET
SETPD SET 00D
IMPULSW # ASSUME NO STEERING UNTIL FOUND OTHERWISE
VLOAD ABVAL
VGTIG # VELOCITY TO BE GAINED AT +7 EXIT CAF BIT7 # TEST +X TRANSLATION EXTEND
RXOR CHAN31 MASK BIT7 EXTEND BZF NOTADDUL TC INTPRET
PDDL DDV # 00D = MAG OF VGTIG AT +7
S40.135# COMPENSATION FOR 2 JET ULLAGE AT +24
WEIGHT/G # MASS IN KGMS AT +16
BON SL1 # DOUBLE CORRECTION IF FOUR JETS
NJETSFLG
S40.130
S40.130 BDSU
PDDL DDV # 00D = MAG OF VGTIG CORRECTED FOR ULLAGE
K1VAL # M.NEWTON-CS AT +24
WEIGHT/G
BDSU BMN 00D
S40.131# TGO LESS THAN 100 CS
PDDL DMP # 02D = TEMP1 AT +7 # Page 727
EMDOT # SPS FLOW RATE SC.AT B+3 KG/CS (SP, NOTE) 3.5SEC # 350 CS AT +14
BDSU PDDL
WEIGHT/G
FANG
DMP SR2 5SECOND # 500 CS AT +14
DDV PUSH# 04D = TEMP2
BDSU BPL 02D
S40.133# TGO GREATER THAN 600 CS DLOAD BDDV
DMP DAD 5SECOND # 500 CS AT +14 1SEC2D # 100 CS AT +14
GOTO
S40.132
S40.131DLOAD DMP # TGO LESS THAN 100 CS
WEIGHT/G
DAD DDV
K2VAL # M.NEWTON CS AT +24
K3VAL # M.NEWTON AT +10
S40.132EXIT EBANK= TGO TC TPAGREE CA MPAC XCH L CA ZERO DXCH TGO # TGO IN CS AT +28 TC S40.134
S40.133 CLEAR EXIT# WILL STEER VEHICLE
IMPULSW
S40.134TC PHASCHNG # KILL GROUP 3 OCT3
TCF ENDOFJOB
NOTADDUL TC INTPRET
GOTO
S40.130 +1# DO NOT COMPENSATE FOR 7 SEC OF ULLAGE SETLOC DAPS7 BANK
COUNT17/40.13
K1VAL = EK1VAL # DP PAD LOAD B+23 NEWTON-SEC/E+2
K2VAL = EK2VAL # DP PAD LOAD B+23 NEWTON-SEC/E+2
K3VAL = EK3VAL # DP PAD LOAD B+09 NEWTONS/E+4 1SEC2D 2DEC100.0 B-14# 100.0 CS AT +14 # Page 728 3.5SEC 2DEC350.0 B-13# 350 CS AT +13
5SECOND 2DEC500.0 B-14# 500.0 CS AT +14
S40.1352DEC69.6005183 B-23# IMPULSE FROM 7.96 SECS OF 2-JET FIRING # 7.96 (199.6)COS(10) LB-SEC, SC.AT # B+23 NEWTON-SEC/E+2 (7 SEC ULLAGE # TO GO, PLUS 0.96 SEC FROM PIPTIME)
# Page 729 # NAME S40.6 GIMBAL DRIVE TEST AND/OR GIMBAL TRIM # MOD NO 5 DATE 9 MARCH, 1967 # MOD BY ENGEL LOG SECTION P40-P47 # # FUNCTIONAL DESCRIPTION # GIMBAL DRIVE TEST....0,+2,-2,0 DEGREE ENGINE COMMANDS, AT 2 SECOND # INTERVALS, FIRST IN PITCH, THEN IN YAW. ASTRONAUT VERIFICATION # OF GIMBAL MOTION ON GPI # GIMBAL TRIM....AFTER A 4 SECOND DELAY, ENGINE COMMANDED TO # PRE-COMPUTED TRIM POSITION. ASTRONAUT VERIFICATION ON GPI. # PRE40.6....RESTART ENTRY TO RE-DO S40.6, ONLY IF RCS IS ON --- IF TVC # IS NOT ON --- PRIMARILY TO GET ACTUATORS TRIMMED FOR IGNITION. # BYPASS 4 SEC DELAY. SPEED IS CRITICAL NEAR IGNITION. # IF TVC IS ON (TVCDAPON OR LATER) THEN REDOTVC WILL TAKE CARE # OF RESTARTING ACTUATORS. # # CALLING SEQUENCE.... # WAITLIST, WITH 2CADR FOR S40.6 (OR PRE40.6), WITH EBANK= CNTR # # NORMAL EXIT MODE -- FIXDELAY, TASKOVER # # SUBROUTINES CALLED.... # OUTPUT (INTERNAL) # FIXDELAY # # ALARM OR ABORT EXIT MODES --- NONE # # ERASABLE INITIALIZATION REQUIRED # CNTR = +0, NORMALLY SET BY THE P40 CALL AT TST,TRIM. # MRKRTMP....POSITIVE FOR GIMBAL DRIVE TEST AND GIMBAL TRIM (BOTH) # NEGATIVE FOR GIMBAL TRIM ONLY # PACTOFF, YACTOFF SC.AT 85.41 ARCSEC/BIT (V48N48 P, YTRIM) # "SC CONT" SWITCH AT "CMC" (A/P CONTROL SWITCH AT "GNC") # ACTIVE SPS GIMBAL MOTOR POWER(S), PITCH, YAW # # OUTPUT # TVCYAW, TVCPITCH (BITS RELEASED) # TVC ENABLE AND OPTICS ERROR COUNTER ENABLE # # DEBRIS # TBMPR60, CNTR
BANK17 SETLOC DAPS6 BANK
EBANK= CNTR COUNT20/S40.6
PRE40.6CS FLAGWRD6 # RESTART ENTRY TO S40.6 (DO NOT PERMIT MASK OCT60000 # IF TVC, BITS 15,14 = 1,0) EXTEND BZMF +2 TCF TASKOVER # TVC, REDOTVC WILL REESTABLISH INTERFACE
CS BIT1 # RCS, SO DO S40.6, GIMTRIM ONLY # Page 730 TS MRKRTMP
CAF BIT1 # FOR REVISED S40.6 TIMING FOR RESTARTS... TS CNTR # TO INDICATE A RESTART ENTRY (CNTR 1S # NORMALLY +0, BY S40.6)
EBANK= CNTR
S40.6CS ZERO # INHIBIT OPTICS ACTIVITY TS OPTIND
CS BIT2 # DISENABLE OPTICS ERROR COUNTERS (ZERO, EXTEND# AND INHIBIT PULSE TRANSMISSION -- WAND CHAN12 # NORMAL STATE)
CAF OCT02200 # TVC ENABLE (SPS SERVO AMPS SEE DAC EXTEND# VOLTAGES) AND DISENGAGE OPTICS/DAC WOR CHAN12
CS CNTR # CHECK FOR COMPLETION OF YAW TEST. # Page 731 CCS A TCF GIMTRIM # COMPLETED, GO TO GIMBAL TRIM ROUTINE CS BIT1 # SET UP YAW TEST TS CNTR TCF GIMDTEST # FOR YAW TEST
OUTPUT EXTEND# OUTPUT THE INCREMENT....SAVE Q QXCH TEMPR60
INDEX CNTR TS TVCPITCH
INDEX CNTR CAF BIT11 EXTEND WOR CHAN14
TC FIXDELAY # WAIT 2SEC, WHILE ASTRONAUT VERIFIES DEC200# GIMBAL MOTION ON GPI TC TEMPR60
GIMTRIM TC FIXDELAY # WAIT 4 SECONDS BEFORE GIMBAL TRIM DEC400
+2CS ZERO # PICK UP TRIM VALUES AND OUTPUT THEM AD PACTOFF # (AVOID +0) ENTRY POINT FROM RSTRTST TS TVCPITCH # ON A RESTART, TO AVOID 4SEC DELAY CS ZERO AD YACTOFF TS TVCYAW
OCT02200 OCT02200# BITS 8,11 FOR CHANNEL 12 TVC/OPTICS
-4ACTDEG DEC -168# -2(+2ACTDEG), WHOLE BITS, NO ROUNDUP
+2ACTDEG DEC +84# +2 DEG, SC.AT 85.41 ARCSEC/BIT (+84D)
# CALLED BY "DONOUN46" (VERB 48), OR DIRECTLY BY "FRESHDAP" (RCS DAP) VIA IBNKCALL
COUNT20/S41.2
S41.2CA DAPDATR1 # Page 732 MASK THREE AD A TS RATEINDX
INHINT
CAE DAPDATR1 # IS LEM ATTACHED (BITS 14,13 OF DAPDATR1 MASK PRIO30 # =10) AD -BIT14 # (OCT57777) EXTEND BZF TOGETHER # YES
CS BIT2 # NO, UNSET FLAG MASK FLAGWRD7 TS FLAGWRD7
TCF +4
TOGETHER CS FLAGWRD7 # ATTACHED, SET FLAG FOR INTEGRATION MASK BIT2 ADS FLAGWRD7
RELINT
CA DAPDATR1 MASK BIT4 EXTEND BZMF +2# DEC 46 MEANS NARROW DB CA DEC409 AD DEC46 # DEC 455 MEANS WIDE DB TS ADB
CA DAPDATR1 MASK BIT7 # QUAD BD EXTEND BZMF +2 CA ONE TS XTRANS CA DAPDATR1 MASK BIT10 # QUAD AC EXTEND BZMF +2 CS ONE ADS XTRANS
INHINT EXTEND BZF +5# CLEAR NJETSFLG (4 JETS, OR NO JETS) CS FLAGWRD1 # SET NJETSFLG (2 JETS, AC OR BD QUADS) MASK BIT15 # NJETSFLG = 1 FOR 2 JET ULLAGE (AC OR BD) ADS FLAGWRD1 # Page 733 TCF +4 CS BIT15 # KJETSFLG = 0 FOR 4 JET (OR 0 JET) ULLAGE MASK FLAGWRD1 TS FLAGWRD1 RELINT CA DAPDATR2 MASK BIT13 EXTEND BZMF +2 TCF +2 CS ONE
COM TS ACORBD # MINUS FOR A-C, PLUS FOR B-D
CA DAPDATR2 MASK BIT10 CCS A TCF +4 CA ONE TS RACFAIL TCF BDFAIL CA ZERO TS RACFAIL CA DAPDATR2 MASK BIT4 CCS A TCF BDFAIL CS ONE TS RACFAIL
BDFAIL CA DAPDATR2 MASK BIT7 CCS A TCF +4 CA ONE TS RBDFAIL TC Q CA ZERO TS RBDFAIL CA DAPDATR2 MASK BIT1 CCS A TC Q CS ONE TS RBDFAIL TC Q
# DAPFIG ENTRY VIA TC POSTJUMP AS JOB FROM "STABLISH" (VERB 46)
BANK42 SETLOC EXTVBS # Page 734 BANK
DAPFIG CS BIT9 # TURN OFF SIVB TAKEOVER EXTEND WAND CHAN12
CAE DAPDATR1 # DETERMINE VEHICLE CONFIGURATION EXTEND MP BIT3 # RIGHT SHIFT 4 OCTAL DIGITS MASK THREE # (IN CASE BIT 15 IS USED) INDEX A TCF +1# BRANCH BASED ON CONFIG....
TCF NODAPUP # CM.......ACTIVATE NODAP TCF RCSDAPUP # CSM......ACTIVATE RCSDAP TCF RCSDAPUP # CSM/LEM..ACTIVATE RCSDAP TC POSTJUMP CADR SATSTKON
RCSDAPUP INHINT# CALL TO ACTIVATE RCSDAP, AND RETURN
TCR IBNKCALL CADR RCSDAPON RELINT TCF ENDFIG # CAME IN VIA V46, GO OUT VIA GOPIN
NODAPUP EXTEND# T5 IDLE FOR NODAP (DON'T WORRY ABOUT T) DCA T5IDLDAP DXCH T5LOC TC DOWNFLAG # RESET T5-USAGE FLAGS FOR NODAP ADRES DAPBIT1 # BIT 15 FLAG 6 = 0 TC DOWNFLAG ADRES DAPBIT2 # BIT 14 FLAG 6 = 0 INHINT TC IBNKCALL # ZERO JET CHANNELS IN 14 MS AND THEN CADR ZEROJET # LEAVE THE T6 CLOCK DISABLED. RELINT CAF BIT1 # KILL KALCMANU JOB TS HOLDFLAG
ENDFIG TC POSTJUMP # CAME IN VIA V46, GO OUT VIA GOPIN CADR GOPIN
SBANK= PINSUPER # Added by RSB 2009 EBANK= PACTOFF
T5IDLDAP 2CADR T5IDLOC
SBANK= LOWSUPER BANK17 SETLOC DAPS6 BANK
DEC409 DEC409
DEC46 DEC46
# Page 735
# CALLED BY "DONOUN47" (VERB 48), OR DIRECTLY BY "FRESHDAP" (RCS DAP)
S40.14 CAE IXX # RCS ENTRY EXTEND MP CONTONE TS J/M
# RCSDAPON ENTRY MUST BE UNDER INT-INHIBIT
RCSDAPON CAF0.6SECT5 # 0.6 SEC ALLOWS TVCEXEC/ROLLDAP TO DIE
+1TS TIME5 # ENTRY FROM R00TOP00 TS T5PHASE # WILL CAUSE FRESHDAP (+1)
CS RCSFLAGS # SET BIT3 TO REINITIALIZE FDAI ERROR MASK BIT3 # DISPLAY, IN CASE SC CONT SWITCH ADS RCSFLAGS # IN SCS NOT GNC (GUIDEMODE PRIMARY)
EXTEND DCA RCSADDR # (RCSATT) DXCH T5LOC
CS OCT60000 # SEE BITS 15,14 TO 01 TO INDICATE MASK FLAGWRD6 # T5 TAKEOVER BY RCSDAP AD BIT14 TS FLAGWRD6 # KILLS TVCEXEC AND ROLLDAP STARTS
TC Q # RETURN TO CALLER (TVCDAPOF OR RCSDAPUP)
Messung V0.5 in Prozent
¤ 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.0.209Bemerkung:
(vorverarbeitet am 2026-10-12)
¤
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.