FreeCalypso > hg > freecalypso-tools
view loadtools/hexdecode.c @ 421:ab8fb95a28da
rvinterf/rvtat converted to use libinterf
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 27 Oct 2018 23:48:20 +0000 |
parents | e7502631a0f9 |
children |
line wrap: on
line source
/* * This module contains the decode_hex_byte() function, * which is used by the SREC file reader and will likely be used * by other code as well, such as the dump-to-file function * of loadtool. */ #include <ctype.h> decode_hex_byte(s) char *s; { register int u, l; if (!isxdigit(s[0]) || !isxdigit(s[1])) return(-1); if (isdigit(s[0])) u = s[0] - '0'; else if (isupper(s[0])) u = s[0] - 'A' + 10; else u = s[0] - 'a' + 10; if (isdigit(s[1])) l = s[1] - '0'; else if (isupper(s[1])) l = s[1] - 'A' + 10; else l = s[1] - 'a' + 10; return((u << 4) | l); }