; CATH -- CONVERT ASCII TO HEX
; This routine converts the ASCII Hexadecimal char (0-9,A-F)
; in A to the corresponding binary value in A.
;
; On return, A=hex value if no error; if error, A=20H (<SP>).
;
CATH::
SUI '0' ; CONVERT 0-9
JC ERROR ; INVALID CHAR
CPI 10 ; 0-9?
RC
SUI 7 ; CONVERT A-F
CPI 10
JC ERROR
CPI 16 ; A-F?
JNC ERROR
RET
ERROR: MVI A,' ' ; ERROR CHAR
RET