From f2522c9bb33f88bdf3cac2c5352a2bcded15f8b8 Mon Sep 17 00:00:00 2001 From: Karl Goffin Date: Tue, 20 Oct 2020 17:56:00 +0300 Subject: [PATCH 1/3] Proof KALCMANU_STEERING #598 (#735) Co-authored-by: James Harris --- Luminary099/KALCMANU_STEERING.agc | 40 +++++++++++++------------------ 1 file changed, 16 insertions(+), 24 deletions(-) diff --git a/Luminary099/KALCMANU_STEERING.agc b/Luminary099/KALCMANU_STEERING.agc index 3f390cb..9d83369 100644 --- a/Luminary099/KALCMANU_STEERING.agc +++ b/Luminary099/KALCMANU_STEERING.agc @@ -37,7 +37,7 @@ NEWDELHI TC BANKCALL # CHECK FOR AUTO STABILIZATION CADR ISITAUTO # ONLY CCS A - TCF NOGO -2 + TCF NOGO -2 NEWANGL TC INTPRET AXC,1 AXC,2 MIS # COMPUTE THE NEW MATRIX FROM S/C TO @@ -45,9 +45,9 @@ NEWANGL TC INTPRET CALL MXM3 VLOAD STADR - STOVL MIS +12D # CALCULATE NEW DESIRED CDU ANGLES + STOVL MIS +12D # CALCULATE NEW DESIRED CDU ANGLES STADR - STOVL MIS +6D + STOVL MIS +6D STADR STORE MIS AXC,1 CALL @@ -59,7 +59,7 @@ NEWANGL TC INTPRET BONCLR EXIT CALCMAN2 MANUSTAT # TO START MANEUVER - CAF TWO # +0 OTHERWISE + CAF TWO # +0 OTHERWISE INCRDCDU TS SPNDX INDEX SPNDX CA BCDU # INITIAL CDU ANGLES @@ -67,16 +67,10 @@ INCRDCDU TS SPNDX INDEX SPNDX MSU NCDU EXTEND - - # The following 2 lines seem to have no purpose at all. - # I am removing them because they only serve to confuse - # the assembler by getting in between EXTEND and MP. - # --- RSB 2009. - #SETLOC KALCMON1 - #BANK - + SETLOC KALCMON1 + BANK MP DT/TAU - CCS A # CONVERT TO 2'S COMPLEMENT + CCS A # CONVERT TO 2S COMPLEMENT AD ONE TCF +2 COM @@ -94,7 +88,7 @@ INCRDCDU TS SPNDX RELINT -# COMPARE PRESENT TIME WTIH TIME TO TERMINATE MANEUVER +# COMPARE PRESENT TIME WITH TIME TO TERMINATE MANEUVER TMANUCHK TC TIMECHK TCF CONTMANU @@ -117,11 +111,11 @@ TIMECHK EXTEND TC Q TCF +2 TCF 2NDRETRN - CCS TTEMP +1 + CCS TTEMP +1 TC Q TCF MANUOFF COM -MANUOFF AD ONESEK +1 +MANUOFF AD ONESEK +1 EXTEND BZMF 2NDRETRN INCR Q @@ -134,7 +128,7 @@ MANUSTAT EXIT # INITIALIZATION ROUTINE EXTEND # FOR AUTOMATIC MANEUVERS DCA TIME2 # Page 367 - DAS TM # TM+TO MANEUVER COMPLETION TIME + DAS TM # TM+TO MANEUVER COMPLETION TIME EXTEND DCS ONESEK DAS TM # (TM+TO)-1 @@ -157,14 +151,14 @@ RATEBIAS TS KSPNDX MP BRATE EXTEND INDEX KSPNDX - DV 1JACC # = AJX $ 90 DEG/SEC-SEC + DV 1JACC # =AJX $ 90 DEG/SEC-SEC INDEX KSPNDX - TS DELPEROR # $ 180 DEG + TS DELPEROR # $ 180 DEG CCS KSPNDX TCF RATEBIAS CA TIME1 - AD ONESEK +1 + AD ONESEK +1 XCH NEXTIME TCF INCRDCDU -1 @@ -185,7 +179,7 @@ MANUCALL INHINT # CALL FOR NEXT UPDATE VIA WAITLIST EBANK= TTEMP 2CADR UPDTCALL # Page 368 - CAF ONESEK +1 # INCREMENT TIME FOR NEXT UPDATE + CAF ONESEK +1 # INCREMENT TIME FOR NEXT UPDATE ADS NEXTIME TCF ENDOFJOB @@ -213,7 +207,7 @@ MANUSTOP CAF ZERO # ZERO MANEUVER RATES ENDROLL CA CPHI # NO FINAL YAW TS CDUXD CAF ZERO - TS OMEGAPD # I.E., MANEUVER DID NOT GO THRU + TS OMEGAPD # I.E. MANEUVER DID NOT GO THRU TS DELDCDU # GIMBAL LOCK ORIGINALLY TS DELPEROR GOODMANU CA ATTPRIO # RESTORE USERS PRIO @@ -225,5 +219,3 @@ GOODMANU CA ATTPRIO # RESTORE USERS PRIO TC SPVAC # RETURN TO USER TC TASKOVER - - From e4daadc0091083e1dd0c3caf90de6fbdb3efe8cf Mon Sep 17 00:00:00 2001 From: Josh Date: Tue, 20 Oct 2020 11:16:59 -0400 Subject: [PATCH 2/3] Proofread LATITUDE_LONGITUDE_SUBROUTINES.agc (#736) Co-authored-by: James Harris --- .../LATITUDE_LONGITUDE_SUBROUTINES.agc | 140 +++++++++--------- 1 file changed, 69 insertions(+), 71 deletions(-) diff --git a/Luminary099/LATITUDE_LONGITUDE_SUBROUTINES.agc b/Luminary099/LATITUDE_LONGITUDE_SUBROUTINES.agc index c75ef0e..de770e2 100644 --- a/Luminary099/LATITUDE_LONGITUDE_SUBROUTINES.agc +++ b/Luminary099/LATITUDE_LONGITUDE_SUBROUTINES.agc @@ -29,24 +29,24 @@ # SUBROUTINE TO CONVERT RAD VECTOR AT GIVEN TIME TO LAT,LONG AND ALT # # CALLING SEQUENCE -# L-1 CALL -# L LAT-LONG # +# L-1 CALL +# L LAT-LONG # SUBROUTINES USED -# R-TO-RP, ARCTAN, SFTGAMMA, SETRE # +# R-TO-RP,ARCTAN,SETGAMMA,SETRE # ERASABLE INIT. REQ. -# AXO, -AYO, AZO, TEPHEM (SET AT LAUNCH TIME) -# ALPHAV = POSITION VECTOR METERS B-29 -# MPAC -- TIME (CSECS B-28) -# ERADFLAG =1, TO COMPUTE EARTH RADIUS, =0 FOR FIXED EARTH RADIUS -# LUNAFLAG=0 FOR EARTH, 1 FOR MOON # +# AXO,-AYO,AZO,TEPHEM (SET AT LAUNCH TIME) +# ALPHAV = POSITION VECTOR METERS B-29 +# MPAC-- TIME (CSECS B-28) +# ERADFLAG =1, TO COMPUTE EARTH RADIUS, =0 FOR FIXED EARTH RADIUS +# LUNAFLAG=0 FOR EARTH,1 FOR MOON # OUTPUT -# LATITUDE IN LAT (REVS. B-0) -# LONGITUDE IN LONG (REVS. B-0) -# ALTITUDE IN ALT METERS B-29 - +# +# LATITUDE IN LAT (REVS. B-0) +# LONGITUDE IN LONG (REVS. B-0) +# ALTITUDE IN ALT METERS B-29 BANK 30 SETLOC LATLONG BANK @@ -60,16 +60,16 @@ LAT-LONG STQ SETPD ALPHAV PUSH ABVAL # 0-5D= R FOR R-TO-RP STODL ALPHAM # ABS. VALUE OF R FOR ALT FORMULA BELOW - ZEROVEC # SET MPAC=0 FOR EARTH, NON-ZERO FOR MOON + ZEROVEC # SET MPAC=0 FOR EARTH,NON-ZERO FOR MOON BOFF COS # USE COS(0) TO GET NON-ZERO IN MPAC - LUNAFLAG # 0=EARTH, 1=MOON + LUNAFLAG # 0=EARTH,1=MOON CALLRTRP CALLRTRP CALL R-TO-RP # RP VECTOR CONVERTED FROM R B-29 UNIT # UNIT RP B-1 STCALL ALPHAV # U2= 1/2 SINL FOR SETRE SUBR BELOW - SETGAMMA # SET GAMMA=B2/A2 FOR EARTH, =1 FOR MOON - CALL # SCALED B-1 + SETGAMMA # SET GAMMA=B2/A2 FOR EARTH,=1 FOR MOON + CALL # SCALED B-1 SETRE # CALC RE METERS B-29 DLOAD DSQ ALPHAV @@ -96,49 +96,48 @@ CALLRTRP CALL STCALL ALT # EXIT WITH ALT METERS B-29 INCORPEX # Page 1135 -# SUBROUTINE TO CONVERT LAT,LONG.ALT AT GIVEN TIME TO RADIUS VECTOR -# +# SUBROUTINE TO CONVERT LAT,LONG,ALT AT GIVEN TIME TO RADIUS VECTOR # CALLING SEQUENCE -# L-1 CALL -# L LALOTORV # +# L-1 CALL +# L LALOTORV # SUBROUTINES USED -# SETGAMMA, SETRE, RP-TO-R # +# SETGAMMA,SETRE,RP-TO-R # ERASABLE INIT. REQ. -# AXO, AYO, AZO, TEPHEM SET AT LAUNCH TIME -# LAT -- LATITUDE (REVS B0) -# LONG -- LONGITUDE (REVS B0) -# ALT -- ALTITUDE (METERS) B-29 -# MPAC -- TIME (CSECS B-28) -# ERADFLAG =1 TO COMPUTE EARTH RADIUS, =0 FOR FIXED EARTH RADIUS -# LUNAFLAG=0 FOR EARTH, 1 FOR MOON # +# AXO,AYO,AZO,TEPHEM SET AT LAUNCH TIME +# LAT-- LATITUDE (REVS B0) +# LONG-- LONGITUDE (REVS B0) +# ALT--ALTITUDE (METERS) B-29 +# MPAC-- TIME (CSECS B-28) +# ERADFLAG =1 TO COMPUTE EARTH RADIUS, =0 FOR FIXED EARTH RADIUS +# LUNAFLAG=0 FOR EARTH,1 FOR MOON # OUTPUT -# R-VECTOR IN ALPHAV (METERS B-29) - +# +# R-VECTOR IN ALPHAV (METERS B-29) LALOTORV STQ SETPD # LAT,LONG,ALT TO R VECTOR INCORPEX 0D STCALL 6D # 6-7D= TIME FOR RP-TO-R - SETGAMMA # GAMMA=B2/A2 FOR EARTH, 1 FOR MOON B-1 + SETGAMMA # GAMMA=B2/A2 FOR EARTH,1 FOR MOON B-1 DLOAD SIN # COS(LONG)COS(LAT) IN MPAC - LAT # UNIT RP = SIN(LONG)COS(LAT) 2-3D + LAT # UNIT RP= SIN(LONG)COS(LAT) 2-3D DMPR PDDL # PD 2 GAMMA*SIN(LAT) 0-1D GAMRP - LAT # 0-1D = GAMMA*SIN(LAT) B-2 - COS PDDL # PD4 2-3D = COS(LAT) B-1 TEMPORARILY + LAT # 0-1D= GAMMA*SIN(LAT) B-2 + COS PDDL # PD4 2-3D=COS(LAT) B-1 TEMPORARILY LONG SIN DMPR # PD 2 - PDDL COS # PD 4 2-3D = SIN(LONG)COS(LAT) B-2 + PDDL COS # PD 4 2-3D=SIN(LONG)COS(LAT) B-2 LAT - PDDL COS # PD 6 4-5D = COS(LAT) B-1 TEMPORARILY + PDDL COS # PD 6 4-5D=COS(LAT) B-1 TEMPORARILY LONG - DMPR VDEF # PD 4 MPAC = COS(LONG)COS(LAT) B-2 + DMPR VDEF # PD 4 MPAC= COS(LONG)COS(LAT) B-2 UNIT PUSH # 0-5D= UNIT RP FOR RP-TO-R SUBR. STCALL ALPHAV # ALPHAV +4= SINL FOR SETRE SUBR. SETRE # RE METERS B-29 - DLOAD BOFF # SET MPAC=0 FOR EARTH, NON-ZERO FOR MOON + DLOAD BOFF # SET MPAC=0 FOR EARTH,NON-ZERO FOR MOON ZEROVEC LUNAFLAG CALLRPRT @@ -154,14 +153,15 @@ CALLRPRT CALL VSL1 # R METERS B-29 STCALL ALPHAV # EXIT WITH R IN METERS B-29 INCORPEX - # SUBROUTINE TO COMPUTE EARTH RADIUS # # INPUT -# 1/2 SIN LAT IN ALPHAV +4 +# +# 1/2 SIN LAT IN ALPHAV +4 # # OUTPUT -# EARTH RADIUS IN ERADM AND MPAC (METERS B-29) +# +# EARTH RADIUS IN ERADM AND MPAC (METERS B-29) GETERAD DLOAD DSQ ALPHAV +4 # SIN**2(L) @@ -176,11 +176,10 @@ GETERAD DLOAD DSQ STORE ERADM RVQ -# THE FOLLOWING CONSTANTS WERE COMPUTED WITH A=6378166, B=6356784 METERS -# B2XSC = B**2 SCALED B-51 -# B2/A2 = B**2/A**2 SCALED B-1 -# EE = (1-B**2/A**2) SCALED B-0 - +# THE FOLLOWING CONSTANTS WERE COMPUTED WITH A=6378166,B=6356784 METERS +# B2XSC= B**2 SCALED B-51 +# B2/A2= B**2/A**2 SCALED B-1 +# EE=(1-B**2/A**2) SCALED B-0 B2XSC 2DEC .0179450689 # B**2 SCALED B-51 DP1/2 = XUNIT B2/A2 2DEC .9933064884 B-1 # GAMMA= B**2/A**2 B-1 @@ -190,12 +189,13 @@ EE 2DEC 6.6935116 E-3 # (1-B**2/A**2) B-0 # ARCTAN SUBROUTINE # # CALLING SEQUENCE -# SIN THETA IN SINTH B-1 -# COS THETA IN COSTH B-1 -# CALL ARCTAN +# +# SIN THETA IN SINTH B-1 +# COS THETA IN COSTH B-1 +# CALL ARCTAN # # OUTPUT -# ARCTAN THETA IN MPAC AND THETA B-0 IN RANGE -1/2 TO +1/2 +# ARCTAN THETA IN MPAC AND THETA B-0 IN RANGE -1/2 TO +1/2 ARCTAN BOV CLROVFLW @@ -234,21 +234,21 @@ ATAN=90 DLOAD SIGN 2DZERO = DPZERO # Page 1138 -# ***** SETGAMMA SUBROUTINE ***** +# ..... SETGAMMA SUBROUTINE ..... # SUBROUTINE TO SET GAMMA FOR THE LAT-LONG AND LALOTORV SUBROUTINES # # GAMMA = B**2/A**2 FOR EARTH (B-1) # GAMMA = 1 FOR MOON (B-1) # # CALLING SEQUENCE -# L CALL -# L+1 SETGAMMA +# L CALL +# L+1 SETGAMMA # # INPUT -# LUNAFLAG=0 FOR EARTH, =1 FOR MOON +# LUNAFLAG=0 FOR EARTH,=1 FOR MOON # # OUTPUT -# GAMMA IN GAMRP (B-1) +# GAMMA IN GAMRP (B-1) SETGAMMA DLOAD BOFF # BRANCH FOR EARTH B2/A2 # EARTH GAMMA @@ -261,27 +261,27 @@ SETGMEX STORE GAMRP GAMRP = 8D # Page 1139 -# ***** SETRE SUBROUTINE ***** +# .....SETRE SUBROUTINE ..... # SUBROUTINE TO SET RE (EARTH OR MOON RADIUS) # -# RE = RM FOR MOON -# RE = RREF FOR FIXED EARTH RADIUS OR COMPUTED RF FOR FISCHER ELLIPSOID +# RE= RM FOR MOON +# RE= RREF FOR FIXED EARTH RADIUS OR COMPUTED RF FOR FISCHER ELLIPSOID # # CALLING SEQUENCE -# L CALL -# L+1 SETRE +# L CALL +# L+1 SETRE # # SUBROUTINES USED -# GETERAD +# GETERAD # # INPUT -# ERADFLAG = 0 FOR FIXED RE, 1 FOR COMPUTED RE -# ALPHAV +4 = 1/2 SINL IF GETERAD IS CALLED -# LUNAFLAG = 0 FOR EARTH, =1 FOR MOON +# ERADFLAG=0 FOR FIXED RE, 1 FOR COMPUTED RE +# ALPHAV +4= 1/2 SINL IF GETERAD IS CALLED +# LUNAFLAG=0 FOR EARTH,=1 FOR MOON # # OUTPUT -# ERADM = 504RM FOR MOON (METERS B-29) -# ERADM = ERAD OR COMPUTED RE FOR EARTH (METERS B-29) +# ERADM= 504RM FOR MOON (METERS B-29) +# ERADM= ERAD OR COMPUTED RE FOR EARTH (METERS B-29) SETRE STQ DLOAD SETREX @@ -290,19 +290,17 @@ SETRE STQ DLOAD LUNAFLAG TSTRLSRM ERAD - BOFF CALL # ERADFLAG=0 FOR FIXED RE, 1 FOR COMPUTED + BOFF CALL # ERADFLAG=0 FOR FIXED RE,1 FOR COMPUTED ERADFLAG SETRXX GETERAD SETRXX STCALL ERADM # EXIT WITH RE OR RM METERS B-29 SETREX -TSTRLSRM BON VLOAD # ERADFLAG=0, SET R0=RLS - ERADFLAG # =1 R0=RM +TSTRLSRM BON VLOAD # ERADFLAG=0,SET R0=RLS + ERADFLAG # =1 R0=RM SETRXX RLS ABVAL SR2R # SCALE FROM B-27 TO B-29 GOTO SETRXX SETREX = S2 - - From 91c2a8d8f9865fda6fbe998ad5909dee1515b70b Mon Sep 17 00:00:00 2001 From: Chyanne Haugen <42098386+crhaugen@users.noreply.github.com> Date: Tue, 20 Oct 2020 08:26:58 -0700 Subject: [PATCH 3/3] Proof KEYRUPT_UPRUPT #600 (#737) Co-authored-by: James Harris --- Luminary099/KEYRUPT_UPRUPT.agc | 38 ++++++++++++++++------------------ 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/Luminary099/KEYRUPT_UPRUPT.agc b/Luminary099/KEYRUPT_UPRUPT.agc index c971b5b..ac8d035 100644 --- a/Luminary099/KEYRUPT_UPRUPT.agc +++ b/Luminary099/KEYRUPT_UPRUPT.agc @@ -51,7 +51,7 @@ ACCEPTUP CAF CHRPRIO # (NOTE: RUPTREG4 = KEYTEMP1) CA RUPTREG4 INDEX LOCCTR - TS MPAC # LEAVE 5 BIT KEY CODE IN MPAC FOR CHARIN + TS MPAC # LEAVE 5 BIT KEY CDE IN MPAC FOR CHARIN TC RESUME # Page 1339 @@ -83,9 +83,9 @@ UPRPT1 CAF LOW5 # TEST FOR TRIPLE CHAR REDUNDANCY COM TC UPTEST -UPCK CS ELRCODE # CODE IS GOOD. IF CODE = `ERROR RESET', - AD KEYTEMP1 # CLEAR UPLOCKFL (SET BIT4 OF FLAGWRD7 = 0) - EXTEND # IF CODE DOES NOT = `ERROR RESET', ACCEPT +UPCK CS ELRCODE # CODE IS GOOD. IF CODE = 'ERROR RESET', + AD KEYTEMP1 # CLEAR UPLOCKFL(SET BIT4 OF FLAGWRD7 = 0) + EXTEND # IF CODE DOES NOT = 'ERROR RESET', ACCEPT BZF CLUPLOCK # CODE ONLY IF UPLOCKFL IS CLEAR (=0). CAF UPLOCBIT # TEST UPLOCKFL FOR 0 OR 1 @@ -94,7 +94,7 @@ UPCK CS ELRCODE # CODE IS GOOD. IF CODE = `ERROR RESET', TC RESUME # UPLOCKFL = 1 TC ACCEPTUP # UPLOCKFL = 0 -CLUPLOCK CS UPLOCBIT # CLEAR UPLOCKFL (I.E., SET BIT 4 OF +CLUPLOCK CS UPLOCBIT # CLEAR UPLOCKFL (I.E.,SET BIT 4 OF ) MASK FLAGWRD7 # FLAGWRD7 = 0) TS FLAGWRD7 TC ACCEPTUP @@ -102,7 +102,7 @@ CLUPLOCK CS UPLOCBIT # CLEAR UPLOCKFL (I.E., SET BIT 4 OF # CODE IS BAD TMFAIL2 CS FLAGWRD7 # LOCK OUT FURTHER UPLINK ACTIVITY MASK UPLOCBIT # (BY SETTING UPLOCKFL = 1) UNTIL - ADS FLAGWRD7 # `ERROR RESET' IS SENT VIA UPLINK. + ADS FLAGWRD7 # 'ERROR RESET' IS SENT VIA UPLINK. TC RESUME UPTEST AD KEYTEMP1 # Page 1340 @@ -114,19 +114,17 @@ HI10 OCT 77740 ELRCODE OCT 22 -# `UPLINK ACTIVITY LIGHT' IS TURNED OFF BY ..... -# 1. VBRELDSP -# 2. ERROR RESET -# 3. UPDATE PROGRAM (P27) ENTERED BY V70,V71,V72, AND V73. -# _ -# THE RECEPTION OF A BAD CODE (I.E., CCC FAILURE) LOCKS OUT FURTHER UPLINK ACTIVITY BY SETTING BIT4 OF FLAGWRD7 = 1. -# THIS INDICATION WILL BE TRANSFERRED TO THE GROUND BY THE DOWNLINK WHICH DOWNLINKS ALL FLAGWORDS. -# WHEN UPLINK ACTIVITY IS LOCKED OUT, IT CAN BE ALLOWED WHEN THE GROUND UPLINKS AND `ERROR RESET' CODE. -# (IT IS RECOMMENDED THAT THE `ERROR LIGHT RESET' CODE IS PRECEEDED BY 16 BITS THE FIRST OF WHICH IS 1 FOLLOWED -# BY 15 ZEROS. THIS WILL ELIMINATE EXTRANEOUS BITS FROM INLINK WHICH MAY HAVE BEEN LEFT OVER FROM THE ORIGINAL -# FAILURE). +# 'UPLINK ACTIVITY LIGHT' IS TURNED OFF BY ..... +# 1. VBRELDSP +# 2. ERROR RESET +# 3. UPDATE PROGRAM(P27) ENTERED BY V70,V71,V72,AND V73. # -# UPLINK ACTIVITY IS ALSO ALLOWED (UNLOCKED) DURING FRESH START WHEN FRESH START SETS BIT4 OF FLAGWRD7 = 0. - +# _ +# THE RECEPTION OF A BAD CODE(I.E CCC FAILURE) LOCKS OUT FURTHER UPLINK ACTIVITY BY SETTING BIT4 OF FLAGWRD7 = 1. +# THIS INDICATION WILL BE TRANSFERRED TO THE GROUND BY THE DOWNLINK WHICH DOWNLINKS ALL FLAGWORDS. +# WHEN UPLINK ACTIVITY IS LOCKED OUT ,IT CAN BE ALLOWED WHEN THE GROUND UPLINKS AND 'ERROR RESET' CODE. +# (IT IS RECOMMENDED THAT THE 'ERROR LIGHT RESET' CODE IS PRECEEDED BY 16 BITS THE FIRST OF WHICH IS 1 FOLLOWED +# BY 15 ZEROES. THIS WILL ELIMINATE EXTRANEOUS BITS FROM INLINK WHICH MAY HAVE BEEN LEFT OVER FROM THE ORIGINAL +# FAILURE) +# UPLINK ACTIVITY IS ALSO ALLOWED(UNLOCKED) DURING FRESH START WHEN FRESH START SETS BIT4 OF FLAGWRD7 = 0. CS XDSPBIT -