?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1.  ifndef included_xmul7
  2.  define included_xmul7
  3.  include "../../common/pushpop.asm"
  4.  include "../../common/mov.asm"
  5.  include "../routines/srl64.asm"
  6.  include "../routines/rsub64.asm"
  7.  include "../routines/normalizexOP1.asm"
  8.  include "xmul3.asm"
  9.  
  10. xmul7:
  11.   call pushpop
  12.   push bc
  13.   call xmul7pp;+_
  14.   call normalizexOP1
  15.   pop de
  16.   ld hl,xOP1
  17.   jp mov10
  18. xmul7pp;_:
  19.   ld de,xOP1
  20.   call mov10
  21.   ld hl,(xOP1+8)
  22.   ld a,h
  23.   or l
  24.   ret z
  25.   ld hl,xOP1
  26.   call mov8
  27.   call srlxOP1_mantissa
  28.   call srlxOP1_mantissa
  29.   call srlxOP1_mantissa
  30.   ld de,xOP2
  31.   call rsbc64
  32.   ld hl,xOP1+8
  33.   ld a,(hl)
  34.   add a,3
  35.   ld (hl),a
  36.   ret nc
  37.   inc hl
  38.   ld a,(hl)
  39.   inc (hl)
  40.   xor (hl)
  41.   jp m,constmul_overflow
  42.   ret
  43.  endif
  44.