File: CLOG.LS of Disk: V50/Source/Source-Listing-RALF-1
(Source file text) 


RALF V50A    8-APR-92    PAGE 1

            /C=CLOG(C) COMPLEX NATURAL LOGARITHM
            /
            /
            / VERSION 50A 27-MAY-80 WVDM
            /
            /
            /ENTER + EXIT IN COMPLEX  Z=X+IY
            /LOG(Z)=LOG(ABS(Z))+I*THETA
            /ABS(Z)=SQRT(X*X+Y*Y)
            /THETA=ATAN(Y/X)
            /
            /CALLS REAL SQRT,LOG,ATAN2
            /
                    SECT    CLOG
00000 1030          JA      #CLOG
00001 0051  
                    DPCHK
00002 0314          TEXT    +CLOG  +
00003 1707  
00004 4040  
00005 1100  CLOGXR, SETX    XR
00006 0016  
00007 1110          SETB    BP
00010 0013  
00011 1030          JA      .+3
00012 0014  
00013 0000  BP,     F 0.0
00014 0000  
00015 0000  
00016 0000  XR,     F 0.0
00017 0000  
00020 0000  
00021 0000          F 0.0
00022 0000  
00023 0000  
00024 0000  ARG,    F 0.0
00025 0000  
00026 0000  
00027 0000          F 0.0
00030 0000  
00031 0000  
00032 0000  ETEMP,  F 0.0
00033 0000  
00034 0000  
                    ORG     10*3+BP
00043 0040          FNOP
00044 1030          JA      CLOGXR
00045 0005  
00046 0000          0
00047 1030  RT,     JA      .
00050 0047  
            /
                    BASE    0
00051 0006  #CLOG,  STARTD
00052 0210          FLDA    10*3
00053 6400          FSTA    RT
RALF V50A    8-APR-92    PAGE 1-1

00054 0047  
00055 0200          FLDA    0
00056 1110          SETB    BP
00057 0013  
00060 1100          SETX    XR
00061 0016  
                    BASE    BP
00062 0101          LDX     1,1
00063 0001  
00064 6200          FSTA    BP
00065 0610          FLDA%   BP,1
00066 6200          FSTA    BP
00067 0050          STARTE
00070 0600          FLDA%   BP
00071 6203          FSTA    ARG
00072 0005          STARTF
                    EXTERN  ATAN2
00073 1130          JSR     ATAN2
00074 0000  
00075 1030          JA      CL1
00076 0103  
00077 1030          JA      ARG+3           /ATAN(Y/X)
00100 0027  
00101 1030          JA      ARG
00102 0024  
00103 6205  CL1,    FSTA    ETEMP
00104 0203          FLDA    ARG
00105 4203          FMUL    ARG
00106 6203          FSTA    ARG
00107 0204          FLDA    ARG+3
00110 4204          FMUL    ARG+3           /X*X+Y*Y
00111 1203          FADD    ARG
00112 6203          FSTA    ARG
                    EXTERN  SQRT
00113 1130          JSR     SQRT            /TAKE SQRT
00114 0000  
00115 1030          JA      CL2
00116 0121  
00117 1030          JA      ARG
00120 0024  
00121 6203  CL2,    FSTA    ARG
                    EXTERN  ALOG            /ALOG(ABS(Z))
00122 1130          JSR     ALOG
00123 0000  
00124 1030          JA      CL3
00125 0130  
00126 1030          JA      ARG
00127 0024  
00130 6203  CL3,    FSTA    ARG             /REAL PART
00131 0205          FLDA    ETEMP           /IMAGINARY PART
00132 6204          FSTA    ARG+3
00133 0050          STARTE
00134 0203          FLDA    ARG
00135 6400          FSTA    #CAC
00136 0000  
00137 1030          JA      RT
RALF V50A    8-APR-92    PAGE 1-2

00140 0047  
                    EXTERN  #CAC
RALF V50A    8-APR-92    PAGE 2

            
RALF V50A    8-APR-92    PAGE 2-1

NO ERRORS 
15 SYMBOLS, NO ABS REFS 

 #      C 00000   #CAC   X 00000   #CLOG    00051   #MAIN  S 00000  
 ALOG   X 00000   ARG      00024   ATAN2  X 00000   BP       00013  
 CLOG   S 00141   CLOGXR   00005   CL1      00103   CL2      00121  
 CL3      00130   ETEMP    00032   RT       00047   SQRT   X 00000  
 XR       00016