/
/
/	A  S  I  N
/	-  -  -  -
/
/SUBROUTINE	ASIN(X)
/
/ VERSION 5A 4-27-77  PT
/
	SECT	ASIN
	JA	#ASIN
ASINEQ,	FLDA	FPI2AS		/RETURN PI OVER TWO.
	FMUL	ASIN8		/TIMES ARG.
	JA	ASNRTN
	TEXT	+ASIN  +
ASINXR,	SETX	XRASIN
	SETB	BPASIN
BPASIN,	FNOP
	0
	0
XRASIN,	F 0.0
ASIN8,	F 0.0
ASIN7,	F 0.0
F1ASIN,	F 1.
FPI2AS,	1			/PI OVER 2
	3110
	3755
	ORG	10*3+BPASIN
	FNOP
	JA	ASINXR
	0
ASNRTN,	JA	.
	BASE	0
#ASIN,	STARTD
	FLDA	10*3
	FSTA	ASNRTN
	FLDA	0
	SETX	XRASIN
	SETB	BPASIN
	BASE	BPASIN
	LDX	1,1
	FSTA	BPASIN
	FLDA%	BPASIN,1	/ADDR OF X
	FSTA	BPASIN
	STARTF
	FLDA%	BPASIN		/GET X
	FSTA	ASIN8		/STORE ARG AWAY.
	JGE	.+3		/TAKE ABSOLUTE VALUE.
	FNEG
	FSUB	F1ASIN		/SEE IF >1
	JLE	ASINOK		/CONTINUE PROCESS.
	EXTERN	#ARGER
	TRAP4	#ARGER		/TRAP OUT.
	JA	ASNRTN		/RETURN.
ASINOK,	FLDA	ASIN8		/X   USES STRAIGHT TRIG RELATION.
	FNEG
	FMUL	ASIN8		/-X^2
	FADD	F1ASIN		/1.-X^2
	JEQ	ASINEQ		/IF 0,FAC=PI OVER 2
	FSTA	ASIN7
	EXTERN	SQRT
	JSR	SQRT
	JA	.+4
	JA	ASIN7
	FSTA	ASIN7		/SQRT(1.-X^2)
	FLDA	ASIN8
	FDIV	ASIN7		/X/SQRT(1.X^2)
	FSTA	ASIN7
	EXTERN	ATAN
	JSR	ATAN		/TAKE THE ARCTANGENT.
	JA	ASNRTN
	JA	ASIN7
