Commit | Line | Data |
---|---|---|
7af5ad59 PH |
1 | / |
2 | / | |
3 | / | |
4 | / D E X P 3 | |
5 | / - - - - - | |
6 | / | |
7 | /SUBROUTINE DEXP3(B,E) FOR DOUBLE TO DOUBLE | |
8 | / | |
9 | / VERSION 5A 4-26-77 MH | |
10 | / | |
11 | SECT DEXP3 | |
12 | JA #DEXP3 | |
13 | DPCHK | |
14 | EXTERN #ARGER | |
15 | EXP3ER, TRAP4 #ARGER | |
16 | TEXT +DEXP3 + | |
17 | EXP3XR, SETX XREXP3 | |
18 | SETB BPEXP3 | |
19 | JA .+3 | |
20 | BPEXP3, FNOP | |
21 | 0 | |
22 | 0 | |
23 | XREXP3, F 0.0 | |
24 | EXP31, F 0.0 | |
25 | F 0.0 | |
26 | EXP32, F 0.0 | |
27 | F 0.0 | |
28 | ORG 10*3+BPEXP3 | |
29 | FNOP | |
30 | JA EXP3XR | |
31 | 0 | |
32 | XP3RTN, JA . | |
33 | FP1XP3, F 1. | |
34 | F 0.0 | |
35 | BASE 0 | |
36 | #DEXP3, STARTD | |
37 | FLDA 10*3 | |
38 | FSTA XP3RTN | |
39 | FLDA 0 | |
40 | SETX XREXP3 | |
41 | SETB BPEXP3 | |
42 | BASE BPEXP3 | |
43 | LDX 1,1 | |
44 | FSTA BPEXP3 | |
45 | FLDA% BPEXP3,1 /ADDR OF B | |
46 | FSTA EXP31 | |
47 | FLDA% BPEXP3,1+ /ADDR OF E | |
48 | FSTA EXP32 | |
49 | STARTE | |
50 | FLDA% EXP31 /GET B | |
51 | JEQ XP3RTN /0 ^ X = 0 | |
52 | FSTA EXP31 /SAVE BASE | |
53 | FLDA% EXP32 /GET E | |
54 | JEQ EXP3ON /X ^ 0 = 1 | |
55 | FSTA EXP32 /SAVE EXPONENT | |
56 | FLDA EXP31 | |
57 | JLT EXP3ER /ALL IS NOT WELL | |
58 | EXTERN DLOG | |
59 | JSR DLOG /CALL LOG | |
60 | JA .+4 /TAKE LOG (B) | |
61 | JA EXP31 | |
62 | FMUL EXP32 /MULT BY EXPONENT-E | |
63 | FSTA EXP31 | |
64 | EXTERN DEXP | |
65 | JSR DEXP /CALL EXP. | |
66 | JA XP3RTN | |
67 | JA EXP31 | |
68 | EXP3ON, FLDA FP1XP3 | |
69 | JA XP3RTN | |
70 | \f |