home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
emulate
/
systems
/
z80win
/
multiply.ass
< prev
next >
Wrap
Text File
|
1994-03-03
|
474b
|
23 lines
ORG &4000
STARTC &4000
ENDC &4100
;
; ROUTINE TO MULTIPLY THE HL AND DE REGISTERS
;
; RESULT IS RETURNED IN THE HL REGISTER
MULTHLDE: LD A,16 ; A REGISTER IS A LOOP COUNTER
LD C,L
LD B,H ; STORE OPERAND IN BC
LD HL,0 ; HL HOLDS TOTAL
MULLOOP: BIT 0,E ; TEST IF ADD REQD
JR Z,NOADD
ADD HL,BC ; ADD IN THE RESULT
NOADD: SLA C ; BC=BC*2
RL B
RR D ; DE=DE/2
RR E
DEC A
JR NZ,MULLOOP ; LOOP 16 TIMES
RET