?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download

  1.  ifndef included_xmul15
  2.  define included_xmul15
  3.  include "../../common/pushpop.asm"
  4.  include "../../common/mov.asm"
  5.  include "../routines/srl64_x4.asm"
  6.  include "../routines/sub64.asm"
  7.  include "../routines/normalizexOP1.asm"
  8.  include "xmul3.asm"
  9.  
  10. xmul15:
  11.   call pushpop
  12.   push bc
  13.   call xmul15pp;+_
  14.   call normalizexOP1
  15.   pop de
  16.   ld hl,xOP1
  17.   jp mov10
  18. xmul15pp;_:
  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 srlxOP2_4
  28.   ld de,xOP1
  29.   call sbc64
  30.   ld hl,xOP1+8
  31.   ld a,(hl)
  32.   add a,4
  33.   ld (hl),a
  34.   ret nc
  35.   inc hl
  36.   ld a,(hl)
  37.   inc (hl)
  38.   xor (hl)
  39.   jp m,constmul_overflow
  40.   ret
  41.  endif
  42.