]> cvs.zerfleddert.de Git - proxmark3-svn/blame - common/crc16.c
But let people override CROSS if they reall want to ;)
[proxmark3-svn] / common / crc16.c
CommitLineData
7fe9b0b7 1#include "crc16.h"\r
0c2ed92d 2\r
7fe9b0b7 3unsigned short update_crc16( unsigned short crc, unsigned char c )\r
4{\r
5 unsigned short i, v, tcrc = 0;\r
6\r
7 v = (crc ^ c) & 0xff;\r
0c2ed92d 8 for (i = 0; i < 8; i++) {\r
9 tcrc = ( (tcrc ^ v) & 1 ) ? ( tcrc >> 1 ) ^ 0x8408 : tcrc >> 1;\r
10 v >>= 1;\r
11 }\r
12\r
9bea179a 13 return ((crc >> 8) ^ tcrc)&0xffff;\r
0c2ed92d 14}\r
Impressum, Datenschutz