diff options
author | William Harrington <kb0iic@berzerkula.org> | 2025-01-14 16:06:02 -0600 |
---|---|---|
committer | William Harrington <kb0iic@berzerkula.org> | 2025-01-14 16:06:02 -0600 |
commit | 0cc9b20c15460213e488bf5e70963b941482f628 (patch) | |
tree | bb0143245583ec846630f39bfa2258dba640ccd7 /sdk/other/hex.c | |
parent | 0e084ade5069756d487b5c948c48b777e37c00c9 (diff) |
Add source.
Diffstat (limited to 'sdk/other/hex.c')
-rw-r--r-- | sdk/other/hex.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/sdk/other/hex.c b/sdk/other/hex.c new file mode 100644 index 0000000..ae5ccec --- /dev/null +++ b/sdk/other/hex.c @@ -0,0 +1,44 @@ +/* + * Hex digit conversion functions. + * $Id$ + * Copyright (c) 1997 by Tycho Softworks. + * For conditions of distribution and reuse see product license. + */ + +#include <other/strcvt.h> + +char hex(int digit) +{ + if(digit < 10) + return '0' + digit; + else + return '7' + digit; +}; + +char *hexbyte(uchar v) +{ + static char h[3]; + + h[0] = hex(v / 16); + h[1] = hex(v % 16); + h[2] = 0; + return h; +}; + +char *hexshort(ushort v) +{ + static char h[5]; + + strcpy(h, hexbyte((uchar)(v / 256))); + strcpy(h + 2, hexbyte((uchar)(v % 256))); + return h; +}; + +char *hexlong(ulong v) +{ + static char h[9]; + + strcpy(h, hexshort((ushort)(v / 65536))); + strcpy(h + 4, hexshort((ushort)(v % 65536))); + return h; +}; |