



; -------------------------------------
; Multiplikation DE = HL x DE

v_mult	pop	hl
	
	ld	a,h		; Sortiere: DE ≤ HL
	cp	d
	jr	nz,$+4
	ld	a,l
	cp	e
	jr	nc,$+3
	ex	hl,de		; HL = Multiplikand
	ld	c,d		; CA = Multiplikator
	ld	a,e
	ld	de,0		; Ergebnissammler
	jr	m1
	
; Multiplikand links schieben
m2	add	hl,hl		; 11
; Multiplikator rechts schieben
	srl	c		;  8
	rra			;  4
	jr	nc,m2		; 12/ 7
; Bit=1 => Multiplikand addieren 	
	ex	hl,de		;  0/ 4
	add	hl,de		;  0/11
	ex	hl,de		;  0/ 4
; Schleifenendtest
m1	and	a		;  0/ 4
	jr	nz,m2		;  0/12/7
	cp	c		;  0/ 0/4
	jr	nz,m2		;  0/ 0/12/7
	jp	(iy)		;  0/ 0/ 0/8

