X-Git-Url: http://gitweb.hachti.de/?a=blobdiff_plain;f=sw%2Ff4%2FFRTSRC%2Fcsin.ra;fp=sw%2Ff4%2FFRTSRC%2Fcsin.ra;h=cc2b02bb8d03f1467c32d55000ce8ec653e0f026;hb=7af5ad59491ddf2066641aef1e0025a337c0f247;hp=0000000000000000000000000000000000000000;hpb=919757fd611e482003ce51f366f6783cab73dea3;p=pdp8.git diff --git a/sw/f4/FRTSRC/csin.ra b/sw/f4/FRTSRC/csin.ra new file mode 100644 index 0000000..cc2b02b --- /dev/null +++ b/sw/f4/FRTSRC/csin.ra @@ -0,0 +1,98 @@ +/ +/ C S I N +/ - - - - +/ +/ VERSION 5A 4-27-77 PT +/ +/COMPLEX SIN AND COS ROUTINE +/ +/CCOS(X+I*Y)=COS(X)*COSH(Y)-SIN(X)*SINH(Y) +/ +/CSIN(X+I*Y)=SIN(X)*COSH(Y)+COS(X)*SINH(Y) +/ +/CALLS SIN,COS,COSH,SINH +/ + SECT CSIN + JA #CSIN + DPCHK + TEXT +CSIN + +CSINXR, SETX XR + SETB BP + JA .+3 +BP, F 0.0 +XR, F 0.0 +ARG, F 0.0 + F 0.0 +C, F 0.0 +CH, F 0.0 +S, F 0.0 + ORG 10*3+BP + FNOP + JA CSINXR + 0 + +RT, JA . +SH, F 0.0 + BASE 0 +#CSIN, SETX XR + LDX 0,0 +COM, STARTD + FLDA 10*3 + FSTA RT + FLDA 0 + SETB BP + BASE BP + LDX 1,1 + FSTA BP + FLDA% BP,1 + FSTA BP + STARTE + FLDA% BP + FSTA ARG + STARTF + EXTERN COS + JSR COS + JA CSA + JA ARG /COS(X) +CSA, FSTA C + EXTERN SIN + JSR SIN + JA CSB + JA ARG +CSB, FSTA S /SIN(X) + EXTERN SINH + JSR SINH + JA CSC + JA ARG+3 +CSC, FSTA SH /SINH(Y) + EXTERN COSH + JSR COSH + JA CSD + JA ARG+3 +CSD, FSTA CH /COSH(Y) +/XR0 IS 0 FOR CSIN AND 1 FOR CCOS + JXN CALCOS,0 + FLDA S + FMUL CH + FSTA ARG /SIN*COSH + FLDA C +CSE, FMUL SH + FSTA ARG+3 /COS*SINH + STARTE + FLDA ARG + FSTA #CAC + JA RT + EXTERN #CAC +/DO COS +/ +CALCOS, FLDA C + FMUL CH + FSTA ARG + FLDA S + FNEG + JA CSE + ENTRY CCOS +CCOS, SETX XR + LDX 1,0 + JA COM +