		XDEF	_CMul32

		SECTION Calc1,CODE

		XREF	_OldZahl
		XREF	_Zahl
		XREF	_error

_CMul32:				movem.l	d0-d2,-(a7)
					move.l	_OldZahl,d0
					clr.l	d2
					cmp.l	#$ffff,d0
					bhi.s	_cont1
					moveq	#1,d2
_cont1:					move.l	_Zahl,d1
					cmp.l	#$ffff,d1
					bhi.s	_testfalse
					tst	d2
					bne.s	_ok
					bra.s	_cont3
_testfalse:				tst	d2
					beq.s	_over
					bra.s	_cont2
_cont3:					move.l	_Zahl,d0
					move.l	_OldZahl,d1
_cont2:					move.l	d0,-(a7)
					and.l	#$ffff,d0
					mulu	d1,d0
					move.l	d0,d2
					move.l	(a7)+,d0
					swap	d0
					and.l	#$ffff,d0
					mulu	d1,d0
					swap	d2
					and.l	#$ffff,d2
					add.l	d2,d0
					cmp.l	#$ffff,d0
					bls.s	_ok
_over:					move.l	#2,_error
_ok:					movem.l	(a7)+,d0-d2
					rts

			END
