Proof R30 (#626) Page: 0712—0722 (#706)

* Proof R30 (#626) Page: 0712—0722

Signed-off-by: Kokan <kokaipeter@gmail.com>

* Review comments fixed

Co-authored-by: James Harris <wopian@wopian.me>
Signed-off-by: Kokan <kokaipeter@gmail.com>

Co-authored-by: James Harris <wopian@wopian.me>
pull/805/head
Kókai Péter 2020-11-06 19:03:32 +00:00 committed by GitHub
parent bcb96e6973
commit 717a643fdd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 77 additions and 78 deletions

View File

@ -40,51 +40,51 @@
# USED THROUGHOUT. CALCULATE AND DISPLAY ORBITAL PARAMETERS
#
# 1. IF AVERAGE G IS OFF:
# FLASH DISPLAY V04N06. R2 INDICATES WHICH SHIP'S STATE VECTOR IS
# TO BE UPDATED. INITIAL CHOICE IS THIS SHIP (R2=1). ASTRONAUT
# CAN CHANGE TO OTHER SHIP BY V22E XE. WHERE X IS NOT EQ 1.
# FLASH DISPLAY V04N06. R2 INDICATES WHICH SHIP'S STATE VECTOR IS
# TO BE UPDATED. INITIAL CHOICE IS THIS SHIP (R2=1). ASTRONAUT
# CAN CHANGE TO OTHER SHIP BY V22EXE, WHERE X NOT EQ 1.
# SELECTED STATE VECTOR UPDATED BY THISPREC (OTHPREC).
# CALLS SR30.1 (WHICH CALLS TFFCONMU + TFFRP/RA) TO CALCULATE
# RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE
# HEIGHT ABOVE LAUNCH PAD OR LUNAR LANDING SITE), HARD (APOGEE
# HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO
# INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
# FLASH MONITOR V16N44 (HAPO, HPER, TFF). TFF IS -59M59S IF IT WAS
# NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND.
# ASTRONAUT HAS OPTION TO MONITOR TPER BY KEYING IN N 32 E.
# DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS
# ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S.
# 2. IF AVERAGE G IS ON:
# CALLS SR30.1 APPROX EVERY TWO SECS. STATE VECTOR IS ALWAYS
# FOR THIS VEHICLE. V82 DOES NOT DISTURB STATE VECTOR. RESULTS
# OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF.
# FLASH MONITOR V16N44 (HAPO, HPER, TFF).
# ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
# ABOVE REMARKS.
# RPER (PERIGEE RADIUS), RAPO (APOGEE RADIUS), HPER (PERIGEE
# HEIGHT ABOVE LAUNCH PAD OR LUNAR LANDING SITE), HARD (APOGEE
# HEIGHT AS ABOVE), TPER (TIME TO PERIGEE), TFF (TIME TO
# INTERSECT 300 KFT ABOVE PAD OR 35KFT ABOVE LANDING SITE).
# FLASH MONITOR V16N44 (HAPO, HPER, TFF).TFF IS -59M59S IF IT WAS
# NOT COMPUTABLE, OTHERWISE IT INCREMENTS ONCE PER SECOND.
# ASTRONAUT HAS OPTION TO MONITOR TPER BY KEYING IN N 32 E.
# DISPLAY IS IN HMS, IS NEGATIVE (AS WAS TFF), AND INCREMENTS
# ONCE PER SECOND ONLY IF TFF DISPLAY WAS -59M59S.
#
# CALLING SEQUENCE: VERB 82 ENTER.
# 2. IF AVERAGE G IS ON:
# CALLS SR30.1 APPROX EVERY TWO SECS. STATE VECTOR IS ALWAYS
# FOR THIS VEHICLE. V82 DOES NOT DISTURB STATE VECTOR. RESULTS
# OF SR30.1 ARE RAPO, RPER, HAPO, HPER, TPER, TFF.
# FLASH MONITOR V16N44 (HAPO, HPER, TFF).
# ADDENDUM: HAPO AND HPER SHOULD BE CHANGED TO READ HAPOX AND HPERX IN THE
# ABOVE REMARKS.
#
# SUBROUTINES CALLED: SR30.1, GOXDSPF
# MAYBE -- THISPREC, OTHPREC, LOADTIME, DELRSPL
# CALLING SEQUENCE: VERB 82 ENTER.
#
# SUBROUTINES CALLED: SR30.1, GOXDSPF
# MAYBE - THISPREC , OTHPREC, LOADTIME, DELRSPL
# NORMAL EXIT MODES: TC ENDEXT
#
# ALARMS: NONE
#
# OUTPUT: HAPOX (-29) M
# HPERX (-29) M
# RAPO (-29) M EARTH
# OUTPUT: HAPOX (-29) M
# HPERX (-29) M
# RAPO (-29) M EARTH
# (-27) M MOON
# RPER (-29) M EARTH
# RPER (-29) M EARTH
# (-27) M MOON
# TFF (-28) CS CONTAINS NEGATIVE QUANTITY
# -TPER (-28) CS CONTAINS NEGATIVE QUANTITY
#
# TFF (-28) CS CONTAINS NEGATIVE QUANTITY
# -TPER (-28) CS CONTAINS NEGATIVE QUANTITY
# Page 713
# ERASABLE INITIALIZATION REQUIRED: STATE VECTOR.
#
# DEBRIS: QPRET, RONE, VONE, TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG.
# MAYBE: TSTART82, V82FLAGS, TDEC1.
# ERASABLE INITIALIZATION REQUIRED: STATE VECTOR.
#
# DEBRIS: QPRET, RONE, VONE,TFF/RTMU, HPERMIN, RPADTEM, V82EMFLG.
# MAYBE: TSTART82, V82FLAGS, TDEC1.
EBANK= HAPOX
BANK 31
@ -108,8 +108,8 @@ V82GOFF EXIT # ALLOW ASTRONAUT TO SELECT VEHICLE
CADR GOXDSPF
TC ENDEXT # TERMINATE
TC +2 # PROCEED
TC -5 # DATA IN. OPTION1+1 = 1 FOR THIS VEHICLE
# UNEQ 1 FOR OTHER VEHICLE
TC -5 # DATA IN. OPTION1+1 = 1 FOR THIS VEHICLE.
# UNEQ 1 FOR OTHER VEHICLE.
CAF BIT4 # 80 MS
TC WAITLIST
EBANK= TFF
@ -140,9 +140,9 @@ V82STALL CAF THREE # STALL IN THIS LOOP AND WITHOLD V 16 N 44
FLAGGON CAF V16N44 # MONITOR HAPO,HPER,TFF.
TC BANKCALL
CADR GOXDSPF
TC B5OFF # TERM. THIS TELLS TICKTEST TO KILL ITSELF
TC B5OFF # PROCEED. DITTO
TC V82GOFLP # RECYCLE. RECOMPUTE STATE VECT + DISPLAY
TC B5OFF # TERM THIS TELLS TICKTEST TO KILL ITSELF
TC B5OFF # PROCEED DITTO
TC V82GOFLP # RECYCLE RECOMPUTE STATE VECT + DISPLAY
OPTIONVN VN 412
V16N44 VN 1644
@ -162,16 +162,16 @@ OTHSHIP TC INTPRET
CALL # CALL STATE VECTOR UPDATE FOR OTHER SHIP.
OTHPREC
BOTHSHIP VLOAD # MOVE RESULTS INTO TFFCONIC STORAGE AREAS
RATT # TO BE CALLED BY SR30.1.
STOVL RONE # RATT AT (-29)M FOR EARTH OR MOON.
RATT # TO BE CALLED BY SR30.1.
STOVL RONE # RATT AT (-29)M FOR EARTH OR MOON
VATT
STORE VONE # VATT AT (-7)M/CS FOR EARTH OR MOON
STORE VONE # VATT AT (-7)M/CS FOR EARTH OR MOON
DLOAD*
1/RTMUE,2 # X2 IS 0 FOR EARTH CENTERED STATE VEC
STORE TFF/RTMU # X2 IS 2 FOR MOON
1/RTMUE,2 # X2 IS 0 FOR EARTH CENTERED STATE VEC
STORE TFF/RTMU # X2 IS 2 FOR MOON
DLOAD* # AS LEFT BY THISPREC OR OTHPREC.
MINPERE,2
STORE HPERMIN # TFFRTMU, HPERMIN, AND RPADTEM ARE ALL
STORE HPERMIN # TFFRTMU, HPERMIN AND RPADTEM ARE ALL
SLOAD BHIZ # EARTH/MOON PARAMETERS AS SET HERE.
X2
EARTHPAD
@ -184,41 +184,41 @@ THISSHIP TC INTPRET
GOTO
BOTHSHIP
# THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED. DO NOT SEPARATE PAIRS.
# THE FOLLOWING CONSTANTS ARE PAIRWISE INDEXED. DO NOT SEPARATE PAIRS.
MINPERM 2DEC 10668 B-27 # 35 KFT MIN PERIGEE HEIGHT FOR MOON(-27)M
MINPERE 2DEC 91440 B-29 # 300 KFT (-29)M FOR EARTH
EARTHPAD DLOAD CLRGO # PAD 37-B RADIUS. SCALED AT (-29)M
EARTHPAD DLOAD CLRGO # PAD 37-B RADIUS. SCALED AT (-29)M.
RPAD
V82EMFLG # INDICATE EARTH SCALING FOR SR30.1
V82EMFLG # INDICATE EARTH SCALING FOR SR30.1
BOTHPAD
MOONPAD VLOAD ABVAL # COMPUTE MOON PAD RADIUS FROM RLS VECTOR.
RLS # SCALED AT (-27)M
RLS # SCALED AT (-27)M.
SET
V82EMFLG # INDICATE MOON SCALILNG FOR SR30.1
V82EMFLG # INDICATE MOON SCALING FOR SR30.1
BOTHPAD STCALL RPADTEM
SR30.1 # CALCULATE ORBITAL PARAMETERS
RTB DSU
LOADTIME
TSTART82 # PRESENT TIME -- TIME V82GOFF1 BEGAN
STORE TSTART82 # SAVE IT
TSTART82 # PRESENT TIME - TIME V82GOFF1 BEGAN
STORE TSTART82 # SAVE IT
DLOAD BZE # SR30.1 SETS -TPER=0 IF HPER L/
-TPER # HPERMIN (300 OR 35) KFT.
-TPER # HPERMIN (300 OR 35) KFT.
TICKTIFF # (-TPER = 0)
TICKTPER DLOAD DAD # (-TPER NON ZERO) TFF WAS NOT COMPUTED.
-TPER # BUT WAS SET TO 59M59S. DON'T DICK TFF, DO
TSTART82 # TICK -TPER. DISPLAY BOTH.
TICKTPER DLOAD DAD # (-TPER NON ZERO) TFF WAS NOT COMPUTED.
-TPER # BUT WAS SET TO 59M59S.DONT TICK TFF, DO
TSTART82 # TICK -TPER. DISPLAY BOTH.
STORE -TPER # -TPER CORRECTED FOR TIME SINCE V82GOFF1
EXIT # BEGAN
EXIT # BEGAN.
CAF BIT1
TS V82FLAGS # INFORMS TICKTEST TO INCREMENT ONLY -TPER
TC ENDOFJOB
TICKTIFF DLOAD DAD # (-TPER=0) TFF WAS COMPUTED. TICK TFF.
TFF # DO NOT TICK -TPER. DISPLAY TFF, BUT NOT
TICKTIFF DLOAD DAD # (-TPER=0) TFF WAS COMPUTED.TICK TFF.
TFF # DO NOT TICK -TPER.DISPLAY TFF, BUT NOT
TSTART82 # -TPER.
STORE TFF # TFF CORRECTED FOR TIME SINCE V82GOFF1
EXIT # BEGAN.
@ -232,7 +232,7 @@ TICKTEST CAF BIT5 # THIS WAITLIST PROGRAM PERPETUATES ITSELF
CCS A
TC DOTICK
CAF PRIO25
TC NOVAC # TERMINATE V 82. CAN'T CALL ENDEXT IN RUPT.
TC NOVAC # TERMINATE V 82.CANT CALL ENDEXT IN RUPT.
EBANK= EXTVBACT
2CADR ENDEXT
@ -246,10 +246,10 @@ DOTICK CAF 1SEC # RE-REQUEST TICKTEST.
MASK V82FLAGS
INDEX A
TC +1
TC TASKOVER # IF NO FLAGBITS SET DONT' CHANGE TFF OR
TC TASKOVER # IF NO FLAGBITS SET DONT CHANGE TFF OR
# -TPER, BUT CONTINUE LOOP.
TC TPERTICK # ONLY BIT 1 SET. INCR -TPER BY 1 SEC.
TFFTICK CAF 1SEC # ONLY BIT 2 SET. INCR TFF BY 1 SEC.
TC TPERTICK # ONLY BIT 1 SET. INCR -TPER BY 1 SEC.
TFFTICK CAF 1SEC # ONLY BIT 2 SET. INCR TFF BY 1 SEC.
TS L
CAF ZERO
DAS TFF
@ -261,7 +261,7 @@ TPERTICK CAF 1SEC
TC TASKOVER
# Page 717
V82GON EXIT # AVERAGE G ON. USE CURRENT STATE VECTOR
V82GON EXIT # AVERAGE G ON. USE CURRENT STATE VECTOR
# FOR ORBITAL PARAMETER CALCULATIONS.
CAF PRIO7 # LESS THAN LAMBERT
TC FINDVAC # V82GON1 WILL PERFORM ORBIT CALCULATIONS
@ -270,7 +270,7 @@ V82GON EXIT # AVERAGE G ON. USE CURRENT STATE VECTOR
RELINT
CCS NEWJOB # WITHOLD V16 N44 UNTIL FIRST ORBIT CALC
TC CHANG1 # IS DONE. NOTE: V82GON1 (PRIO7, FINDVAC
TC CHANG1 # IS DONE. NOTE: V82GON1 (PRIO7, FINDVAC
# JOB) IS COMPLETED BEFORE V82GON (PRIO7,
# NOVAC JOB).
V82REDSP CAF V16N44 # MONITOR HAPO, HPER, TFF
@ -283,23 +283,23 @@ V82REDSP CAF V16N44 # MONITOR HAPO, HPER, TFF
V82GON1 TC INTPRET # THIS EXEC PROGRAM PERPETUATES ITSELF
# ONCE A SEC UNTIL BIT 5 OF EXTVBACT =0.
VLOAD GOTO # HOLDS OFF CCS NEWJOB BETWEEN RN AND
RN # VN FETCH SO RN, VN ARE FROM SAME
NEXTLINE # STATE VECTOR UPDATE.
NEXTLINE STOVL RONE # RN AT (-29)M FOR EARTH OR MOON
RN # VN FETCH SO RN , VN ARE FROM SAME
NEXTLINE # STATE VECTOR UPDATE.
NEXTLINE STOVL RONE # RN AT (-29)M FOR EARTH OR MOON
VN
STORE VONE # VN AT (-7)M/CS FOR EARTH OR MOON
BON GOTO
MOONTHIS # FLAG INDICATES BODY ABOUT WHICH ORBITAL
MOONGON # CALCULATIONS ARE TO BE PERFORMED.
EARTHGON # IF SET -- MOON, IF RESET --EARTH.
MOONGON # CALCULATIONS ARE TO BE PERFORMED.
EARTHGON # IF SET - MOON , IF RESET - EARTH.
MOONGON SET DLOAD
V82EMFLG # FLAG MOON SCALING FOR SR30.1
V82EMFLG # INDICATE MOON SCALING FOR SR30.1
1/RTMUM # LUNAR PARAMETERS LOADED HERE FOR SR30.1
STODL TFF/RTMU
MINPERM
STOVL HPERMIN
RLS # SCALED AT (-27)M
RLS # SCALED AT (-27)M.
ABVAL GOTO
V82GON2
EARTHGON CLEAR DLOAD
@ -319,7 +319,7 @@ V82GON3 CAF BIT5
BZF ENDEXT # YES, TERMINATE VB 82 LOOP
CAF 1SEC
TC BANKCALL # WAIT ONE SECOND BEFORE REPEATING
CADR DELAYJOB # ORBITAL PARAMETER COMPUTATION.
CADR DELAYJOB # ORBITAL PARAMETER COMPUTATION.
TC V82GON1
SPLRET = V82GON3
@ -433,9 +433,9 @@ STORHAPO STODL HAPOX
STORHPER STODL HPERX # STORE (RPER - RPADTEM) INTO HPERX.
MPAC +4
DSU BPL # HPERMIN AT (-29)M FOR EARTH, (-27)M MOON
HPERMIN # IF HPER L/ HPERMIN (300 OR 35) KFT,
DOTPER # THEN ZERO INTO -TPER.
DLOAD GOTO # OTHERWISE CALCULATE TPER.
HPERMIN # IF HPER L/ HPERMIN (300 OR 35)KFT,
DOTPER # THEN ZERO INTO -TPER.
DLOAD GOTO # OTHERWISE CALCULATE TPER.
HI6ZEROS
SKIPTPER
DOTPER DLOAD CALL
@ -447,19 +447,18 @@ SKIPTPER STODL -TPER
DAD CALL
RPADTEM # RPADTEM AT (-29)M FOR EARTH, (-27)M MOON
CALCTFF # GIVES 59M59S FOR TFF IF HPER G/
DCOMP # HPERMIN + RPADTEM. (TPER WAS NON ZERO)
DCOMP # HPERMIN + RPADTEM. (TPER WAS NON ZERO)
STCALL TFF # OTHERWISE COMPUTES TFF. (GOTO)
S2
MAXCHK DSU BPL # IF C(MPAC) > 9999.9 NM. MPAC = 9999.9 NM.
MAXNM
+3 # OTHERWISE C(MPAC) - B(MPAC).
+3 # OTHERWISE C(MPAC) = B(MPAC).
DAD RVQ
MAXNM
+3 DLOAD RVQ # (USED BY P30 -- P37 ALSO)
+3 DLOAD RVQ # (USED BY P30 - P37 ALSO)
MAXNM
MAXNM 2OCT 0106505603
# Page 722 (empty page)