Keep DAA! (was Re: 8086 bugs)

Fred Cisin cisin at xenosoft.com
Sat Dec 10 13:37:48 CST 2005


On Sat, 10 Dec 2005, J.C. Wren wrote:
>     My CP/M machine is in storage at the moment, but I have the vague
> recollection that the single DAA version doesn't work on the 8080, or
> possibly the Z80.  I know I first used this code on one of those two,
> and I spent some time playing around with it.  Does this sound familiar
> to you?

Sorry, don't remember.  These all work with 80x86



> Fred Cisin wrote:
>
> >>>   AND AL,00fh
> >>>   ADD AL,090h
> >>>   DAA
> >>>   ADC AL,040h
> >>>   DAA
> >>>   RET
> >>>
> >>>
> >or:
> >
> >AND AL, 0Fh
> >DAA
> >ADD AL, 0F0h
> >ADC AL, 40h
> >
> >or:
> >
> >AND AL, 0Fh
> >ADD AL, 0
> >ADC AL,28h
> >DAA
> >
> >
> >and, of course, it can be extended to 16 bits with screen display by:
> >
> >	MOV CX, 0404h	; CH and CL are independent
> >N1:	ROL AX, CL
> >	PUSH AX
> >	AND AL, 0Fh
> >
> >	DAA
> >	ADD AL, 0F0h
> >	ADC AL, 40h
> >
> >	MOV AH, 0Eh  	;displays char in AL at cursor position
> >	INT 10h
> >
> >	POP AX
> >	DEC CH
> >	JNZ N1
> >
> >
> >--
> >Grumpy Ol' Fred     		cisin at xenosoft.com


More information about the cctalk mailing list