diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2010-04-14 05:34:17 -0400 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2010-04-14 05:34:17 -0400 |
commit | e37de01df5aaf6161cd88424cb522f590355f5d8 (patch) | |
tree | 58100ce4ee258635e5cf3bd5a31f97c835ed7716 /srecord.c | |
parent | 29f16317f536d8f525bff3a3b8f9541076fab550 (diff) | |
download | gpsd-e37de01df5aaf6161cd88424cb522f590355f5d8.tar.gz |
Reindented some small utility modules. All regression tests pass.
Diffstat (limited to 'srecord.c')
-rw-r--r-- | srecord.c | 158 |
1 files changed, 81 insertions, 77 deletions
@@ -36,99 +36,103 @@ * bytes are read from bbuf and a ready-to-go srecord is placed in sbuf */ int -bin2srec(unsigned int type, unsigned int offset, unsigned int num, unsigned char *bbuf, unsigned char *sbuf) { - unsigned char abuf[MAX_BYTES_PER_RECORD*2 + 2], sum; - size_t len; - - if ((num < 1) || (num > MAX_BYTES_PER_RECORD)) - return -1; - - len = (size_t)(4 + num + 1); - memset(abuf, 0, sizeof(abuf)); - hexdump((size_t)num, bbuf, abuf); - sum = sr_sum((unsigned int)len, offset, bbuf); - (void)snprintf((char *)sbuf, MAX_BYTES_PER_RECORD*2 + 17, - "S%u%02X%08X%s%02X\r\n", - type, (unsigned)len, offset, (char *)abuf, (unsigned)sum); - return 0; +bin2srec(unsigned int type, unsigned int offset, unsigned int num, + unsigned char *bbuf, unsigned char *sbuf) +{ + unsigned char abuf[MAX_BYTES_PER_RECORD * 2 + 2], sum; + size_t len; + + if ((num < 1) || (num > MAX_BYTES_PER_RECORD)) + return -1; + + len = (size_t) (4 + num + 1); + memset(abuf, 0, sizeof(abuf)); + hexdump((size_t) num, bbuf, abuf); + sum = sr_sum((unsigned int)len, offset, bbuf); + (void)snprintf((char *)sbuf, MAX_BYTES_PER_RECORD * 2 + 17, + "S%u%02X%08X%s%02X\r\n", + type, (unsigned)len, offset, (char *)abuf, (unsigned)sum); + return 0; } -int -srec_hdr(unsigned int num, unsigned char *bbuf, unsigned char *sbuf) { - return bin2srec(0, 0, num, bbuf, sbuf); +int srec_hdr(unsigned int num, unsigned char *bbuf, unsigned char *sbuf) +{ + return bin2srec(0, 0, num, bbuf, sbuf); } -int -srec_fin(unsigned int num, unsigned char *sbuf) { - unsigned char bbuf[4], sum; +int srec_fin(unsigned int num, unsigned char *sbuf) +{ + unsigned char bbuf[4], sum; - memset(bbuf, 0, 4); + memset(bbuf, 0, 4); - bbuf[0] = (unsigned char)(num & 0xff); - bbuf[1] = (unsigned char)((num >> 8) & 0xff); - sum = sr_sum(3, 0, bbuf); - (void)snprintf((char *)sbuf, 13, "S503%04X%02X\r\n", num, (unsigned)sum); - return 0; + bbuf[0] = (unsigned char)(num & 0xff); + bbuf[1] = (unsigned char)((num >> 8) & 0xff); + sum = sr_sum(3, 0, bbuf); + (void)snprintf((char *)sbuf, 13, "S503%04X%02X\r\n", num, (unsigned)sum); + return 0; } -void -hexdump(size_t len, unsigned char *bbuf, unsigned char *abuf) { - size_t i; +void hexdump(size_t len, unsigned char *bbuf, unsigned char *abuf) +{ + size_t i; - memset(abuf, 0, MAX_BYTES_PER_RECORD*2 + 2); - if (len > MAX_BYTES_PER_RECORD*2) - len = MAX_BYTES_PER_RECORD*2; + memset(abuf, 0, MAX_BYTES_PER_RECORD * 2 + 2); + if (len > MAX_BYTES_PER_RECORD * 2) + len = MAX_BYTES_PER_RECORD * 2; - for(i = 0; i < len; i++) { - abuf[i*2] = hc((bbuf[i] &0xf0) >> 4); - abuf[i*2+1] = hc(bbuf[i] &0x0f); - } + for (i = 0; i < len; i++) { + abuf[i * 2] = hc((bbuf[i] & 0xf0) >> 4); + abuf[i * 2 + 1] = hc(bbuf[i] & 0x0f); + } } /*@ -type @*/ -unsigned char -hc(unsigned char x) { - switch(x) { - case 15: - case 14: - case 13: - case 12: - case 11: - case 10: - return ('A' + x - 10); - case 9: - case 8: - case 7: - case 6: - case 5: - case 4: - case 3: - case 2: - case 1: - case 0: - return ('0' + x); - - default: - return '0'; - } +unsigned char hc(unsigned char x) +{ + switch (x) { + case 15: + case 14: + case 13: + case 12: + case 11: + case 10: + return ('A' + x - 10); + case 9: + case 8: + case 7: + case 6: + case 5: + case 4: + case 3: + case 2: + case 1: + case 0: + return ('0' + x); + + default: + return '0'; + } } + /*@ -type @*/ unsigned char -sr_sum(unsigned int count, unsigned int addr, unsigned char *bbuf) { - int i, j; - unsigned char k, sum = 0; - - sum = (count & 0xff); - sum += ((addr & 0x000000ff)); - sum += ((addr & 0x0000ff00) >> 8); - sum += ((addr & 0x00ff0000) >> 16); - sum += ((addr & 0xff000000) >> 24); - j = count - 5; - for(i = 0; i < j; i++) { - k = bbuf[i]; - sum += k; - } - return ~sum; +sr_sum(unsigned int count, unsigned int addr, unsigned char *bbuf) +{ + int i, j; + unsigned char k, sum = 0; + + sum = (count & 0xff); + sum += ((addr & 0x000000ff)); + sum += ((addr & 0x0000ff00) >> 8); + sum += ((addr & 0x00ff0000) >> 16); + sum += ((addr & 0xff000000) >> 24); + j = count - 5; + for (i = 0; i < j; i++) { + k = bbuf[i]; + sum += k; + } + return ~sum; } |