Mercurial > templog
changeset 26:d3e5934fe55c
- Move crc16 to utils and fix it
- Fix main.c crc calculation
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Thu, 07 Jun 2012 20:26:50 +0800 |
parents | 2943f62c8e62 |
children | dbbd503119ba |
files | main.c server/ts.py server/utils.py |
diffstat | 3 files changed, 18 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/main.c Wed Jun 06 23:05:35 2012 +0800 +++ b/main.c Thu Jun 07 20:26:50 2012 +0800 @@ -204,7 +204,7 @@ UDR0 = c; if (stream == crc_stdout) { - crc_out = _crc_ccitt_update(crc_out, '\n'); + crc_out = _crc_ccitt_update(crc_out, c); } if (c == '\r') {
--- a/server/ts.py Wed Jun 06 23:05:35 2012 +0800 +++ b/server/ts.py Thu Jun 07 20:26:50 2012 +0800 @@ -15,7 +15,7 @@ import time import traceback -from utils import monotonic_time, retry, readline +from utils import monotonic_time, retry, readline, crc16 lightblue = None try: @@ -36,23 +36,6 @@ return s -# from http://blog.stalkr.net/2011/04/pctf-2011-32-thats-no-bluetooth.html -def crc16(buff, crc = 0, poly = 0x8408): - l = len(buff) - i = 0 - while i < l: - ch = ord(buff[i]) - uc = 0 - while uc < 8: - if (crc & 1) ^ (ch & 1): - crc = (crc >> 1) ^ poly - else: - crc >>= 1 - ch >>= 1 - uc += 1 - i += 1 - return crc - @retry() def fetch(sock):
--- a/server/utils.py Wed Jun 06 23:05:35 2012 +0800 +++ b/server/utils.py Thu Jun 07 20:26:50 2012 +0800 @@ -81,3 +81,19 @@ if c == '\n': return buf +# from http://blog.stalkr.net/2011/04/pctf-2011-32-thats-no-bluetooth.html +def crc16(buff, crc = 0, poly = 0x8408): + l = len(buff) + i = 0 + while i < l: + ch = ord(buff[i]) + uc = 0 + while uc < 8: + if (crc & 1) ^ (ch & 1): + crc = (crc >> 1) ^ poly + else: + crc >>= 1 + ch >>= 1 + uc += 1 + i += 1 + return crc