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


RALF V50A    8-APR-92    PAGE 1

            /D=DATAN2(D1,D2) DOUBLE PREC. ARC-TANGENT (2 ARGUMENTS)
            /
            /
            / VERSION 50A 28-MAY-80 WVDM
            /
            /
                    SECT    DATAN2
00000 1030          JA      #DATN2
00001 0063  
                    DPCHK
00002 0401          TEXT    +DATAN2+
00003 2401  
00004 1662  
00005 1100  ATN2XR, SETX    XRATN2
00006 0014  
00007 1110          SETB    BPATN2
00010 0011  
00011 0040  BPATN2, FNOP
00012 0000          0
00013 0000          0
00014 0000  XRATN2, F 0.0
00015 0000  
00016 0000  
00017 0000  YCOR,   F 0.0
00020 0000  
00021 0000  
00022 0000          F 0.0
00023 0000  
00024 0000  
00025 0000  XCOR,   F 0.0
00026 0000  
00027 0000  
00030 0000          F 0.0
00031 0000  
00032 0000  
                    ORG     10*3+BPATN2
00041 0040          FNOP
00042 1030          JA      ATN2XR
00043 0005  
00044 0000          0
00045 1030  AT2RTN, JA      .
00046 0045  
            /
00047 0002  FPIAT2, 2
00050 3110          3110            /PI
00051 3755          3755
00052 2421          2421
00053 0264          0264
00054 3016          3016
            /
00055 0001  ATPI,   0001
00056 3110          3110            /PI/2
00057 3755          3755
00060 2421          2421
00061 0264          0264
00062 3016          3016
RALF V50A    8-APR-92    PAGE 1-1

            /
                    BASE    0
00063 0006  #DATN2, STARTD
00064 0210          FLDA    10*3
00065 6400          FSTA    AT2RTN
00066 0045  
00067 0200          FLDA    0
00070 1100          SETX    XRATN2
00071 0014  
00072 1110          SETB    BPATN2
00073 0011  
                    BASE    BPATN2
00074 0101          LDX     1,1
00075 0001  
00076 6200          FSTA    BPATN2
00077 0610          FLDA%   BPATN2,1        /ADDR OF Y
00100 6202          FSTA    YCOR
00101 0710          FLDA%   BPATN2,1+       /ADDR OF X
00102 6204          FSTA    XCOR
00103 0050          STARTE
00104 0602          FLDA%   YCOR
00105 6202          FSTA    YCOR            /SAVE FOR A SECOND
00106 0102          LDX     1,2             /POSITIVE Y
00107 0001  
00110 1000          JEQ     ATN0
00111 0154  
00112 1060          JGT     ATN1
00113 0116  
00114 0102          LDX     0,2
00115 0000  
00116 0604  ATN1,   FLDA%   XCOR            /GET X - THE QUADRAND
00117 6204          FSTA    XCOR            /+MOVE IT TO A SAFE PLACE
00120 1000          JEQ     ATASP
00121 0146  
00122 0202          FLDA    YCOR            /Y/X
00123 3204          FDIV    XCOR
00124 6202          FSTA    YCOR
                    EXTERN  DATAN
00125 1130          JSR     DATAN           /CALL ATAN
00126 0000  
00127 1030          JA      .+4             /TAKE ARCTAN OF Y/X
00130 0133  
00131 1030          JA      YCOR
00132 0017  
00133 6202          FSTA    YCOR            /SAVE IT AWAY
00134 1010          JGE     A2              /SKIP IF 1ST OR 3RD QUADS
00135 0140  
00136 1212          FADD    FPIAT2          /ADD PI FOR 4TH QUAD
00137 6202          FSTA    YCOR
00140 2020  A2,     JXN     AT2RTN,2        /DONE IF 1 OR 4 Q
00141 0045  
00142 0202          FLDA    YCOR
00143 2212          FSUB    FPIAT2          /2ND OR 3RD Q
00144 1030          JA      AT2RTN
00145 0045  
            /
RALF V50A    8-APR-92    PAGE 1-2

00146 0214  ATASP,  FLDA    ATPI            /PI/2
00147 2020          JXN     ATNG,2
00150 0152  
00151 0003          FNEG
00152 1030  ATNG,   JA      AT2RTN
00153 0045  
            /
00154 0604  ATN0,   FLDA%   XCOR
00155 1050          JLT     POSX
00156 0162  
00157 0002          FCLA                    /X POS, ANS =0
00160 1030          JA      AT2RTN
00161 0045  
            /
00162 0212  POSX,   FLDA    FPIAT2          /X LT 0, ANS = PI
00163 1030          JA      AT2RTN
00164 0045  
RALF V50A    8-APR-92    PAGE 2

            
RALF V50A    8-APR-92    PAGE 2-1

NO ERRORS 
17 SYMBOLS, NO ABS REFS 

 #      C 00000   #DATN2   00063   #MAIN  S 00000   ATASP    00146  
 ATNG     00152   ATN0     00154   ATN1     00116   ATN2XR   00005  
 ATPI     00055   AT2RTN   00045   A2       00140   BPATN2   00011  
 DATAN  X 00000   DATAN2 S 00165   FPIAT2   00047   POSX     00162  
 XCOR     00025   XRATN2   00014   YCOR     00017