X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/1569d97730d80a0a303b74b714bb59272349c3b2..0c2ed92d876c32abce11daf86eea4bcece6fa6fa:/common/crc16.c diff --git a/common/crc16.c b/common/crc16.c new file mode 100644 index 00000000..6cdf3ea3 --- /dev/null +++ b/common/crc16.c @@ -0,0 +1,11 @@ +unsigned short update_crc16( WORD crc, BYTE c ) { + WORD i, v, tcrc = 0; + + v = (crc ^ c) & 0xff; + for (i = 0; i < 8; i++) { + tcrc = ( (tcrc ^ v) & 1 ) ? ( tcrc >> 1 ) ^ 0x8408 : tcrc >> 1; + v >>= 1; + } + + return (crc >> 8) ^ tcrc; +}