]> cvs.zerfleddert.de Git - proxmark3-svn/blame - common/crc16.c
There's no painless way to do this, but it needs to be done --
[proxmark3-svn] / common / crc16.c
CommitLineData
a99c6a19 1unsigned short update_crc16( unsigned short crc, unsigned char c ) {\r
2 unsigned short i, v, tcrc = 0;\r
0c2ed92d 3\r
4 v = (crc ^ c) & 0xff;\r
5 for (i = 0; i < 8; i++) {\r
6 tcrc = ( (tcrc ^ v) & 1 ) ? ( tcrc >> 1 ) ^ 0x8408 : tcrc >> 1;\r
7 v >>= 1;\r
8 }\r
9\r
9bea179a 10 return ((crc >> 8) ^ tcrc)&0xffff;\r
0c2ed92d 11}\r
Impressum, Datenschutz