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