by: Peter F.
After looking at the conversion routines above, I figured I'd add my own. Note this routine does no error checking on the ascii input characters. Peter F. tsetsetse at hotmail.com
;convert 2 hex ascii characters to an 8-bit value
;ascii stored in hichar/lochar, result returned in w
;hichar/lochar are unchanged
ascii2byte
swapf hichar,w ;swap hi nibble into result
btfsc hichar,6 ;check if in range 'A'-'F'
addlw 0x8F ;add correction swapf ('1'-'A'+1)
addwf lochar,w ;add lo nibble
btfsc lochar,6 ;check if in range 'A'-'F'
addlw 0xF9 ;add correction '9'-'A'+1
addlw 0xCD ;adjust final result -0x33
return
Comments: