FreeCalypso > hg > freecalypso-sw
view loadtools/hexdecode.c @ 390:bb4814eb51e4
target-utils abb[rw] commands: call abb_init() to avoid dead hang
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Wed, 11 Jun 2014 07:11:16 +0000 |
parents | aa1f6fe16fef |
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); }