File: DEXP3.RA of Tape: Sources/Fortran/os8-f4-3
(Source file text)
/INTERNAL FUNCTION D=DEXP3(D,(R OR D)) (USED BY EXPDR,EXPDD D=D**R,D) / / / VERSION 40A 28-MAY-80 WVDM / / SECT DEXP3 JA #DEXP3 DPCHK EXTERN #ARGER EXP3ER, TRAP4 #ARGER TEXT +DEXP3 + EXP3XR, SETX XREXP3 SETB BPEXP3 JA .+3 BPEXP3, FNOP 0 0 XREXP3, F 0.0 EXP31, F 0.0 F 0.0 EXP32, F 0.0 F 0.0 FP1XP3, F 1.0 F 0.0 ORG 10*3+BPEXP3 FNOP JA EXP3XR 0 XP3RTN, JA . / BASE 0 #DEXP3, STARTD FLDA 10*3 FSTA XP3RTN FLDA 0 SETX XREXP3 SETB BPEXP3 BASE BPEXP3 LDX 1,1 FSTA BPEXP3 FLDA% BPEXP3,1 /ADDR OF B FSTA EXP31 FLDA% BPEXP3,1+ /ADDR OF E FSTA EXP32 STARTE FLDA% EXP31 /GET B JEQ XP3RTN /0 ^ X = 0 FSTA EXP31 /SAVE BASE FLDA% EXP32 /GET E JEQ EXP3ON /X ^ 0 = 1 FSTA EXP32 /SAVE EXPONENT FLDA EXP31 JLT EXP3ER /ALL IS NOT WELL EXTERN DLOG JSR DLOG /CALL LOG JA .+4 /TAKE LOG (B) JA EXP31 FMUL EXP32 /MULT BY EXPONENT-E FSTA EXP31 EXTERN DEXP JSR DEXP /CALL EXP. JA .+4 JA EXP31 JA XP3RTN / EXP3ON, FLDA FP1XP3 JA XP3RTN