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