Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Mul_BC_DE_DEHL:
- ; ~565.134cc for uniformly distributed BC and DE
- ld a,d
- ld d,0
- ld h,b
- ld l,c
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit14
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit13
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit12
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit11
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit10
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit9
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit8
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit7
- ld a,e
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit6
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit5
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit4
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit3
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit2
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit1
- add a,a
- jr c,Mul_BC_DE_DEHL_Bit0
- add a,a
- ret c
- ld h,d
- ld l,e
- ret
- Mul_BC_DE_DEHL_Bit14:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit13
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit13:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit12
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit12:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit11
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit11:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit10
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit10:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit9
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit9:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit8
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit8:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit7
- add hl,bc
- adc a,d
- Mul_BC_DE_DEHL_Bit7:
- ld d,a
- ld a,e
- and a,%11111110
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit6
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit6:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit5
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit5:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit4
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit4:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit3
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit3:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit2
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit2:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit1
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit1:
- add hl,hl
- adc a,a
- jr nc,Mul_BC_DE_DEHL_Bit0
- add hl,bc
- adc a,0
- Mul_BC_DE_DEHL_Bit0:
- add hl,hl
- adc a,a
- jr c,Mul_BC_DE_DEHL_FunkyCarry
- rr e
- ld e,a
- ret nc
- add hl,bc
- ret nc
- inc e
- ret nz
- inc d
- ret
- Mul_BC_DE_DEHL_FunkyCarry:
- inc d
- rr e
- ld e,a
- ret nc
- add hl,bc
- ret nc
- inc e
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement