ASMB,R,L,C
* 
*  **************************************************************** 
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979.  ALL RIGHTS      * 
*  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,       * 
*  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * 
*  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.        * 
*  **************************************************************** 
* 
*   NAME: PART OF MATH LIBRARY
*   SOURCE:  24998-18064
*   RELOC: PART OF 24998-12001
*   PGMR: BG & JTS
* 
      HED ".RTOR" REAL TO REAL POWER
      NAM .RTOR,6 24998-1X064 REV.2026 800509 
      ENT .RTOR 
      EXT ALOG,EXP
* 
* 
* 
*      CALL.. 
* 
*      JSB .RTOR     (RESULT FLOATING)
*      DEF BASE      (FLOATING) 
*      DEF POWER     (FLOATING) 
*      (ERROR RETURN) 
*      (NORMAL RETURN)
* 
*      CALCULATES  BASE**POWER. 
      SPC 1 
.RTOR NOP 
      STA AREG
      STB BREG
      LDA .RTOR,I 
      STA ARG       SET UP SO AS TO ALLOW ARGS IN A AND B 
      ISZ .RTOR 
      LDA AREG
      LDB BREG
      DLD ARG,I     PICK UP BASE
      STA BASE
      STB BASE+1
      LDA .RTOR,I 
      STA ARG 
      ISZ .RTOR 
      LDA AREG
      LDB BREG
      DLD ARG,I  PICK UP POWER
      STA PWR 
      STB PWR+1 
      LDB BASE
      SZB,RSS      BASE=0 ? 
      JMP BZER     YES
      SZA,RSS      POWER=0 ?
      JMP PZER     YES
      SSB          BASE<0 ? 
      JMP FAIL     YES
      LDA BASE
      LDB BASE+1
      JSB ALOG
      NOP 
      FMP PWR 
      JSB EXP 
      JMP LIBX
      JMP EXIT     ANS=EXP(POWER*ALOG(BASE))
BZER  SSA          POWER<=0 ? 
      JMP FAIL     YES
      CLA          NO 
      JMP EXIT     ANS=0
FAIL  LDA ASCII 
      LDB ASCII+1 
      STO 
LIBX  JMP .RTOR,I 
PZER  LDA E1       ANS=1
      LDB E1+1
EXIT  ISZ .RTOR 
      JMP LIBX
ASCII ASC 2,04UN
E1    DEC 1.
BASE  REP 2 
      NOP 
PWR   REP 2 
      NOP 
AREG  NOP 
BREG  NOP 
ARG   EQU PWR 
B     EQU 1 
      END 
* 
                                                                                                                                                                                                                                                            