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-18XXX  SEE NAM FOR LAST THREE DIGITS 
*   RELOC: PART OF 24998-12001
*   PGMR: BG & JTS
* 
      HED ".CMPY" COMPLEX MULTIPLICATION
      NAM .CMPY,6 24998-1X121 REV.2001 750701 
      ENT .CMPY 
      EXT .ZRNT,.ENTC 
      SPC 2 
* 
*     CALLING SEQUENCE:  Y = X1 * X2
* 
*     JSB .CMPY 
*     DEF Y 
*     DEF X1
*     DEF X2
      SPC 2 
TDB   NOP 
      DEC 14
      NOP 
T     REP 2 
      NOP 
IX1   NOP 
IX2   NOP 
RX1   REP 2         R(X1) 
      NOP 
RX2   REP 2         R(X2) 
      NOP 
Y     NOP 
X1    NOP 
X2    NOP 
.CMPY NOP 
      JSB .ZRNT 
      DEF LIBX
      JSB .ENTC     GET PRAMS ADDRESSES 
      DEF Y 
      STA TDB+2 
      LDA X1
      INA 
      INA 
      STA IX1       SAVE ADDRESS OF I(X1) 
      LDA X2
      INA 
      INA 
      STA IX2       SAVE ADDRESS OF I(X2) 
      DLD IX1,I 
      FMP IX2,I     I(X1) * I(X2) 
      STA T 
      STB T+1       SAVE
      DLD X2,I
      STA RX2       SAVE R(X2)
      STB RX2+1 
      DLD X1,I
      STA RX1       SAVE R(X1)
      STB RX1+1 
      FMP RX2       R(X1) * R(X2) 
      FSB T         R(X1) * R(X2) - I(X1) * I(X2) 
      DST Y,I       STORE REAL PART 
      LDA RX2 
      LDB RX2+1 
      FMP IX1,I     R(X2) * I(X1) 
      STA T 
      STB T+1       SAVE
      LDA RX1 
      LDB RX1+1 
      FMP IX2,I     R(X1) * I(X2) 
      FAD T         R(X1) * I(X2) + R(X2) * I(X1) 
      ISZ Y 
      ISZ Y 
      DST Y,I       STORE IMAGINARY PART
LIBX  JMP TDB+2,I 
      DEF TDB 
      DEC 0 
      SPC 2 
      END 
* 
                                                                                                                                                                                                                                      