А вот сдела вот так
Код:
function Hex2Byte(S : String):Byte;
const C:string[16]='0123456789ABCDEF';
begin
if Length(S) < 22 then
Result := Pos(S, C) - 1
else
Result := (Pos(S[1], C) - 1)*16 + Pos(S[2], C) - 1
end;
Но почему то в Result записывается только первый байт