* Proof FIXED_FIXED_CONSTANT_POOL (#207) * wip(p391/398): Proof R60_62 #247 * wip(p398/398: DONE): Proof R60_62 #247
This commit is contained in:
		
				
					committed by
					
						 James Harris
						James Harris
					
				
			
			
				
	
			
			
			
						parent
						
							4f83a11ecb
						
					
				
				
					commit
					e82746d732
				
			| @@ -37,7 +37,7 @@ | ||||
|  | ||||
| 		COUNT	27/R60 | ||||
|  | ||||
| # CONFORMS TO GSOP CHAPTER FOUR REVISION LOGIC 09	JAN 18, 1968 | ||||
| # CONFORMS TO GSOP CHAPTER FOUR REVISION LOGIC 09 JAN 18,1968 | ||||
|  | ||||
| R60CSM		TC	MAKECADR | ||||
| 		TS	TEMPR60 | ||||
| @@ -51,7 +51,7 @@ REDOMANN	CAF	BIT6 | ||||
| 		TC	INTPRET | ||||
| 		CALL | ||||
| 			VECPOINT	# TO COMPUTE FINAL ANGLES | ||||
| 		STORE	CPHI		# STORE FINAL ANGLES -- CPHI, CTHETA, CPSI | ||||
| 		STORE	CPHI		# STORE FINAL ANGLES - CPHI,CTHETA,CPSI | ||||
| 		EXIT | ||||
|  | ||||
| TOBALL		CAF	V06N18 | ||||
| @@ -59,7 +59,7 @@ TOBALL		CAF	V06N18 | ||||
| 		CADR	GOPERF2R	# DISPLAY PLEASE PERFORM AUTO MANEUVER | ||||
| 		TC	R61TEST | ||||
| 		TC	REDOMANC	# PROCEED | ||||
| 		TCF	ENDMANU1	# ENTER I.E., FINISHED WITH R60 | ||||
| 		TCF	ENDMANU1	# ENTER I.E. FINISHED WITH R60 | ||||
|  | ||||
| 		TC	CHKLINUS	# TO CHECK FOR PRIORITY DISPLAYS | ||||
| 		TC	ENDOFJOB | ||||
| @@ -83,14 +83,14 @@ TOBALLC		CAF	PRIO30		# IS MODE AUTO AND CTL GNC | ||||
| 		BZF	+2		# AUTO, NON-FLASH N18 | ||||
| 		TCF	TOBALL		# NOT AUTO | ||||
|  | ||||
| 		CAF	V06N18		# STATIC UP NON-FLASHING V06 N18 | ||||
| 		CAF	V06N18		# SET UP NON-FLASHING V06 N18 | ||||
| 		TC	BANKCALL | ||||
| 		CADR	GODSPR | ||||
| 		TC	CHKLINUS | ||||
|  | ||||
| STARTMNV	TC	BANKCALL | ||||
| 		CADR	GOMANUR | ||||
| ENDMANUV	TCF	TOBALL		# FINISHED MANEUVER. | ||||
| ENDMANUV	TCF	TOBALL		# FINISHED MANEUVER | ||||
|  | ||||
| ENDMANU1	TC	DOWNFLAG	# RESET 3-AXIS FLAG | ||||
| 		ADRES	3AXISFLG	# BIT 6 FLAG 5 | ||||
| @@ -98,13 +98,13 @@ ENDMANU1	TC	DOWNFLAG	# RESET 3-AXIS FLAG | ||||
| 		TC	BANKJUMP | ||||
|  | ||||
| CHKLINUS	CS	FLAGWRD4 | ||||
| 		MASK	BIT12		# IS PRIORITY DISPLAY FLAG SET? | ||||
| 		MASK	BIT12		# IS PRIORITY DISPLAY FLAG SET | ||||
| 		CCS	A | ||||
| 		TC	Q		# NO -- EXIT | ||||
| 		TC	Q		# NO - EXIT | ||||
| 		CA	Q | ||||
| 		TS	MPAC +2		# SAVE RETURN | ||||
| 		CS	THREE		# OBTAIN LOCATION FOR RESTART | ||||
| 		AD	BUF2		# HOLD Q OF LAST DISPLAY | ||||
| 		CS	THREE		# OBTAIN LOCATION FOR RESTART. | ||||
| 		AD	BUF2		# HOLDS Q OF LAST DISPLAY | ||||
| 		TS	TBASE1 | ||||
|  | ||||
| 		TC	PHASCHNG | ||||
| @@ -141,7 +141,7 @@ GOREDO20	TC	PHASCHNG | ||||
|  | ||||
| R61TEST		CA	MODREG		# ARE WE IN P00.  IF YES THIS MUST BE | ||||
| 		EXTEND			#	VERB49 OR VERB89 SO DO ENDEXT. | ||||
| 		BZF	ENDMANU1	# RESET 3-AXIS & RETURN.  USER DOES ENDEXT | ||||
| 		BZF	ENDMANU1	# RESET 3-AXIS & RUTURN.  USER DOES ENDEXT | ||||
| 		CA	FLAGWRD4	# ARE WE IN R61 (P20) | ||||
| 		MASK	BIT12 | ||||
| 		EXTEND | ||||
| @@ -152,53 +152,52 @@ BIT14+7		OCT	20100 | ||||
| V06N18		VN	0618 | ||||
|  | ||||
| # Page 393 | ||||
| # PROGRAM DESCRIPTION -- VECPOINT | ||||
| # | ||||
| # THIS INTERPRETIVE SUBROUTINE MAY BE USED TO POINT A SPACECRAFT AXIS IN A DESIRED DIRECTION.  THE AXIS | ||||
| # PROGRAM DESCRIPTION - VECPOINT | ||||
|  | ||||
|  | ||||
| # 	THIS INTERPRETIVE SUBROUTINE MAY BE USED TO POINT A SPACECRAFT AXIS IN A DESIRED DIRECTION.  THE AXIS | ||||
| # TO BE POINTED MUST APPEAR AS A HALF UNIT DOUBLE PRECISION VECTOR IN SUCCESSIVE LOCATIONS OF ERASABLE MEMORY | ||||
| # BEGINNING WITH THE LOCATION CALLED SCAXIS.  THE COMPONENTS OF THIS VECTOR ARE GIVEN IN SPACECRAFT COORDINATES. | ||||
| # THE DIRECTION IN WHICH THIS AXIS IS TO BE POINTED MUST APPEAR AS A HALF UNIT DOUBLE PRECISION VECTOR IN | ||||
| # SUCCESSIVE LOCATIONS OF ERASABLE MEMORY BEGINNING WITH THE ADDRESS CALLED POINTVSM.  THE COMPONENTS OF THIS | ||||
| # VECTOR ARE GIVEN IN STABLE MEMBER COORDINATES.  WITH THIS INFORMATION VECPOINT COMPUTES A SET OF THREE GIMBAL | ||||
| # ANGLES (2'S COMPLEMENT) CORRESPONDING TO THE CROSS-PRODUCT ROTATION BETWEEN SCAXIS AND POINTVSM AND STORES THEM | ||||
| # ANGLES (2S COMPLEMENT) CORRESPONDING TO THE CROSS-PRODUCT ROTATION BETWEEN SCAXIS AND POINTVSM AND STORES THEM | ||||
| # IN T(MPAC) BEFORE RETURNING TO THE CALLER. | ||||
| # | ||||
| # THIS ROTATION, HOWEVER, MAY BRING THE S/C INTO GIMBAL LOCK.  WHEN POINTING A VECTOR IN THE Y-Z PLANE, | ||||
| # THE TRANSPONDER AXIS, OR THE AOT FOR THE LEM, THE PROGRAM WILL CORRECT THIS PROGLEM BY ROTATING THE CROSS- | ||||
| # 	THIS ROTATION, HOWEVER, MAY BRING THE S/C INTO GIMBAL LOCK.  WHEN POINTING A VECTOR IN THE Y-Z PLANE, | ||||
| # THE TRANSPONDER AXIS, OR THE AOT FOR THE LEM, THE PROGRAM WILL CORRECT THIS PROBLEM BY ROTATING THE CROSS- | ||||
| # PRODUCT ATTITUDE ABOUT POINTVSM BY A FIXED AMOUNT SUFFICIENT TO ROTATE THE DESIRED S/C ATTITUDE OUT OF GIMBAL | ||||
| # LOCK.  IF THE AXIS TO BE POINTED IS MORE THAN 40.6 DEGREES BUT LESS THAN 60.5 DEG FROM THE +X (OR -X) AXIS, | ||||
| # LOCK.  IF THE AXIS TO BE POINTED IS MORE THAN 40.6 DEGREES BUT LESS THAN 60.5 DEG FROM THE +X (OR-X) AXIS, | ||||
| # THE ADDITIONAL ROTATION TO AVOID GIMBAL LOCK IS 35 DEGREES.  IF THE AXIS IS MORE THAN 60.5 DEGREES FROM +X (OR -X) | ||||
| # THE ADDITIONAL ROTATION IS 35 DEGREES.  THE GIMBAL ANGLES CORRESPONDING TO THIS ATTITUDE ARE THEN COMPUTED AND | ||||
| # STORED AS 2'S COMPLEMENT ANGLES N T(MPAC) BEFORE RETURNING TO THE CALLER. | ||||
| # | ||||
| # WHEN POINTING THE X-AXIS, OR THE THRUST VECTOR, OR ANY VECTOR WITHIN 40.6 DEG OF THE X-AXIS, VECPOINT | ||||
| # STORED AS 2S COMPLIMENT ANGLES IN T(MPAC) BEFORE RETURNING TO THE CALLER. | ||||
| #	WHEN POINTING THE X-AXIS, OR THE THRUST VECTOR, OR ANY VECTOR WITHIN 40.6 DEG OF THE X-AXIS, VECPOINT | ||||
| # CANNOT CORRECT FOR A CROSS-PRODUCT ROTATION INTO GIMBAL LOCK.  IN THIS CASE A PLATFORM REALIGNMENT WOULD BE | ||||
| # REQUIRED TO POINT THE VECTOR IN THE DESIRED DIRECTION.  AT PRESENT NO INDICATION IS GIVEN FOR THIS SITUATION | ||||
| # EXCEPT THAT THE FINAL MIDDLE GIMBAL ANGLE IN MPAC +2 IS GREATER THAN 59 DEGREES. | ||||
| # | ||||
| # CALLING SEQUENCE | ||||
| # | ||||
| #	1)	LOAD SCAXIS, POINTVSM | ||||
| #	2)	CALL | ||||
|  | ||||
| # 	CALLING SEQUENCE - | ||||
| #		1) LOAD SCAXIS, POINTVSM | ||||
| #		2) CALL | ||||
| #			VECPOINT | ||||
| # | ||||
| # RETURNS WITH | ||||
| # | ||||
| #	1)	DESIRED OUTER GIMBAL ANGLE IN MPAC | ||||
| #	2)	DESIRED INNER GIMBAL ANGLE IN MPAC +1 | ||||
| #	3)	DESIRED MIDDLE GIMBAL ANGLE IN MPAC +2 | ||||
| # | ||||
| # ERASABLES USED -- | ||||
| # | ||||
| #	1)	SCAXIS		6 | ||||
| #	2)	POINTVSM	6 | ||||
| #	3)	MIS		18 | ||||
| #	4)	DEL		18 | ||||
| #	5)	COF		6 | ||||
| #	6)	VECQTEMP	1 | ||||
| #	7)	ALL OF VAC AREA	43 | ||||
| # | ||||
| #			TOTAL	99 | ||||
|  | ||||
| # 	RETURNS WITH | ||||
|  | ||||
| #		1) DESIRED OUTER GIMBAL ANGLE IN MPAC | ||||
| #		2) DESIRED INNER GIMBAL ANGLE IN MPAC +1 | ||||
| #		3) DESIRED MIDDLE GIMBAL ANGLE IN MPAC +2 | ||||
|  | ||||
|  | ||||
| # 	ERASABLES USED - | ||||
|  | ||||
| #		1) SCAXIS		6 | ||||
| #		2) POINTVSM		6 | ||||
| #		3) MIS			18 | ||||
| #		4) DEL			18 | ||||
| #		5) COF			6 | ||||
| #		6) VECQTEMP		1 | ||||
| #		7) ALL OF VAC AREA	43 | ||||
|  | ||||
| #				TOTAL	99 | ||||
|  | ||||
| 		SETLOC	VECPT | ||||
| 		BANK | ||||
| @@ -217,7 +216,7 @@ VECLEAR		AXC,2	RTB | ||||
| 			CDUTODCM	# S/C AXES TO STABLE MEMBER AXES (MIS) | ||||
| 		VLOAD	VXM | ||||
| 			POINTVSM	# RESOLVE THE POINTING DIRECTION VF INTO | ||||
| 			MIS		# INITIAL S/C AXES (VF = POINTVSM) | ||||
| 			MIS		# INITIAL S/C AXES ( VF = POINTVSM) | ||||
| 		UNIT | ||||
| 		STORE	28D | ||||
| 					# PD 28 29 30 31 32 33 | ||||
| @@ -230,11 +229,11 @@ VECLEAR		AXC,2	RTB | ||||
| 		DSU	BMN		# VECTOR, IF LESS | ||||
| 			DPB-14		# THAN B-14 ASSUME | ||||
| 			PICKAXIS	# UNIT OPERATION | ||||
| 		VLOAD	DOT		# INVALID. | ||||
| 		VLOAD	DOT		# 	INVALID. | ||||
| 			SCAXIS | ||||
| 			28D | ||||
| 		SL1	ARCCOS | ||||
| COMPMATX	CALL			# NO COMPUTE THE TRANSFORMATION FROM | ||||
| COMPMATX	CALL			# NOW COMPUTE THE TRANSFORMATION FROM | ||||
| 			DELCOMP		# FINAL S/C AXES TO INITIAL S/C AXES MFI | ||||
| 		AXC,1	AXC,2 | ||||
| 			MIS		# COMPUTE THE TRANSFORMATION FROM FINAL | ||||
| @@ -246,8 +245,8 @@ COMPMATX	CALL			# NO COMPUTE THE TRANSFORMATION FROM | ||||
| 			6		# MFS6 = SIN(CPSI)			$2 | ||||
| 		DSU	BMN | ||||
| 			SINGIMLC	# = SIN(59 DEGS)			$2 | ||||
| 			FINDGIMB	# /CPSI/ LESS THAN 59 DEGS. | ||||
| 					# I.E., DESIRED ATTITUDE NOT IN GIMBAL LOCK | ||||
| 			FINDGIMB	# /CPSI/ LESS THAN 59 DEGS | ||||
| 					# I.E. DESIRED ATTITUDE NOT IN GIMBAL LOCK | ||||
|  | ||||
| 		DLOAD	ABS		# CHECK TO SEE IF WE ARE POINTING | ||||
| 			SCAXIS		# THE THRUST AXIS | ||||
| @@ -268,8 +267,8 @@ COMPMATX	CALL			# NO COMPUTE THE TRANSFORMATION FROM | ||||
|  | ||||
| IGSAMEX		VXV	BMN		# FIND THE SHORTEST WAY OF ROTATING THE | ||||
| 			SCAXIS		# S/C OUT OF GIMBAL LOCK BY A ROTATION | ||||
| 			U=SCAXIS	# ABOUT +- SCAXIS, I.E., IF  (IG (SGN MFS3) | ||||
| 					# X SCAXIS . XF) LESS THAN Q, U = SCAXIS | ||||
| 			U=SCAXIS	# ABOUT +- SCAXIS, I.E. IF (IG (SGN MFS3) | ||||
| 					# X SCAXIS . XF) LESS THAN 0, U = SCAXIS | ||||
| 					# OTHERWISE U = -SCAXIS. | ||||
|  | ||||
| 		VLOAD	VCOMP | ||||
| @@ -289,7 +288,7 @@ CHEKAXIS	DLOAD	ABS | ||||
| 			COMPMFSN	# IN THIS CASE ROTATE 35 DEGS TO GET OUT | ||||
| 					# OF GIMBAL LOCK (VECANG2 $360) | ||||
| PICKANG1	DLOAD | ||||
| 			VECANG1		# = 50 DEGS.			      $360 | ||||
| 			VECANG1		# = 50 DEGS			      $360 | ||||
| COMPMFSN	CALL | ||||
| 			DELCOMP		# COMPUTE THE ROTATION ABOUT SCAXIS TO | ||||
| 		AXC,1	AXC,2		# BRING MFS OUT OF GIMBAL LOCK | ||||
| @@ -303,13 +302,13 @@ FINDGIMB	AXC,1	CALL | ||||
| 			0		# EXTRACT THE COMMANDED CDU ANGLES FROM | ||||
| 			DCMTOCDU	# THIS MATRIX | ||||
| 		RTB	SETPD | ||||
| 			V1STO2S		# CONVERT TO 2'S COMPLEMENT | ||||
| 			V1STO2S		# CONVERT TO 2:S COMPLEMENT | ||||
| # Page 396 | ||||
| 			0 | ||||
| 		GOTO | ||||
| 			VECQTEMP	# RETURN TO CALLER | ||||
|  | ||||
| PICKAXIS	VLOAD	DOT		# IF VF X VI = 0, FIND VF, VI | ||||
| PICKAXIS	VLOAD	DOT		# IF VF X VI = 0, FIND VF . VI | ||||
| 			28D | ||||
| 			SCAXIS | ||||
| 		BMN	TLOAD | ||||
| @@ -320,10 +319,10 @@ PICKAXIS	VLOAD	DOT		# IF VF X VI = 0, FIND VF, VI | ||||
|  | ||||
| ROT180		VLOAD	VXV		# IF VF, VI ANTI-PARALLEL, 180 DEG ROTATION | ||||
| 			MIS +6		# IS REQUIRED.  Y STABLE MEMBER AXIS IN | ||||
| 			HIUNITX		# INITIAL S/C AXES. | ||||
| 			HIUNITX		# INITIAL S/C AXIS. | ||||
| 		UNIT	VXV		# FIND Y(SM) X X(I) | ||||
| 			SCAXIS		# FIND UNIT(VI X UNIT(Y(SM) X X(I))) | ||||
| 		UNIT	BOV		# I.E., PICK A VECTOR IN THE PLANE OF X(I), | ||||
| 		UNIT	BOV		# I.E. PICK A VECTOR IN THE PLANE OF X(I), | ||||
| 			PICKX		# Y(SM) PERPENDICULAR TO VI | ||||
| 		STODL	COF | ||||
| 			36D		# CHECK MAGNITUDE | ||||
| @@ -343,18 +342,18 @@ PICKX		VLOAD	GOTO		# PICK THE XAXIS IN THIS CASE | ||||
| 		SETLOC	MANUVER1 | ||||
| 		BANK | ||||
|  | ||||
| SINGIMLC	2DEC	.4285836003	# = SIN(59)				$2 | ||||
| SINGIMLC	2DEC	.4285836003	# =SIN(59)			$2 | ||||
|  | ||||
| SINVEC1		2DEC	.3796356537	# = SIN(49.4)				$2 | ||||
| SINVEC1		2DEC	.3796356537	# =SIN(49.4)			$2 | ||||
|  | ||||
| SINVEC2		2DEC	.2462117800	# = SIN(29.5)				$2 | ||||
| SINVEC2		2DEC	.2462117800	# =SIN(29.5)			$2 | ||||
|  | ||||
| VECANG1		2DEC	.1388888889	# = 50 DEGREES			      $360 | ||||
|  | ||||
| VECANG2		2DEC	.09722222222	# = 35 DEGREES			      $360 | ||||
|  | ||||
|  | ||||
| 1BITDP		OCT	0		# KEEP THIS BEFORE DPB(-14)	  ******** | ||||
| 1BITDP		OCT	0		# KEEP THIS BEFORE DPB(-14)	  ********* | ||||
| DPB-14		OCT	00001 | ||||
| # Page 397 | ||||
| 		OCT	00000 | ||||
| @@ -377,11 +376,10 @@ R62DISP		CAF	V06N22		# DISPLAY COMMAND ICDUS CPHI, CTHETA, CPHI | ||||
| 		TCF	R62DISP		# ENTER | ||||
|  | ||||
| 					# ASTRONAUT MAY LOAD NEW ICDUS AT THIS | ||||
| 					# POINT. | ||||
| GOMOVE		TC	UPFLAG		# SET FOR 3-AXIS MANEUVER | ||||
| 		ADRES	3AXISFLG | ||||
| 					# POINT | ||||
| GOMOVE		TC	UPFLAG		# SET 3-AXIS FLAG | ||||
| 		ADRES	3AXISFLG	# BIT 6	FLAG 5 | ||||
|  | ||||
| 		TC	BANKCALL | ||||
| 		CADR	R60CSM | ||||
| 		TCF	ENDEXT | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user