X-Git-Url: http://gitweb.hachti.de/?a=blobdiff_plain;f=sw%2Ff4%2FFRTSRC%2Fcexp.ra;fp=sw%2Ff4%2FFRTSRC%2Fcexp.ra;h=7a9dbd0626fa7375dab0f4c45f24f5854d31ac69;hb=7af5ad59491ddf2066641aef1e0025a337c0f247;hp=0000000000000000000000000000000000000000;hpb=919757fd611e482003ce51f366f6783cab73dea3;p=pdp8.git diff --git a/sw/f4/FRTSRC/cexp.ra b/sw/f4/FRTSRC/cexp.ra new file mode 100644 index 0000000..7a9dbd0 --- /dev/null +++ b/sw/f4/FRTSRC/cexp.ra @@ -0,0 +1,71 @@ +/ +/ C E X P +/ - - - - +/ +/ COMPLEX EXPONENT ROUTINE +/Z=X+IY +/ +/ VERSION 5A 4-25-77 MH +/ +/ +/CEXP(Z)=EXP(X)*(COS(Y)+I*SIN(Y)) +/ENTER+EXIT IN COMPLEX +/EXTERNAL EXP,SIN,COS +/ + SECT CEXP + JA #CEXP + DPCHK + TEXT +CEXP + +CEXPXR, SETX XR + SETB BP + JA .+3 +BP, F 0.0 +XR, F 0.0 +ARG, F 0.0 + F 0.0 + ORG 10*3+BP + FNOP + JA CEXPXR + 0 +RT, JA . + BASE 0 +#CEXP, STARTD + FLDA 10*3 + FSTA RT + FLDA 0 + SETB BP + SETX XR + BASE BP + LDX 1,1 + FSTA BP + FLDA% BP,1 + FSTA BP + STARTE + FLDA% BP + FSTA ARG + STARTF + EXTERN EXP + JSR EXP /EXP(X) + JA CEX1 + JA ARG +CEX1, FSTA ETEMP + EXTERN COS + JSR COS /COS(Y) + JA CEX2 + JA ARG+3 +CEX2, FSTA ARG + EXTERN SIN + JSR SIN /SIN(Y) + JA CEX3 + JA ARG+3 +CEX3, FSTA ARG+3 + FLDA ETEMP + FMULM ARG + FMULM ARG+3 + STARTE + FLDA ARG + FSTA #CAC + JA RT + EXTERN #CAC +ETEMP, F 0.0 +