X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/fnordlicht-mini/blobdiff_plain/2eadb723b619a7d45e68a73390da9bf339c61510..2acfa12f0d3f47810bdfda83b6eef12a63e71703:/firmware/tools/fixcrc.c diff --git a/firmware/tools/fixcrc.c b/firmware/tools/fixcrc.c deleted file mode 100644 index 3d7fefb..0000000 --- a/firmware/tools/fixcrc.c +++ /dev/null @@ -1,47 +0,0 @@ -#include -#include - -/* EEPROM data size, not including checksum */ -#define EEP_DATA_SIZE 494 -/* FIXME: actually we should either find a way to include the declaration of - struct storage_t here or at least make this a command line parameter */ - -/* code from http://www.nongnu.org/avr-libc/user-manual/group__util__crc.html */ -uint16_t crc16_update(uint16_t crc, uint8_t a) -{ - int i; - - crc ^= a; - for (i = 0; i < 8; ++i) - { - if (crc & 1) - crc = (crc >> 1) ^ 0xA001; - else - crc = (crc >> 1); - } - - return crc; -} - -int main(int argc, char ** argv) -{ - int i, c; - uint16_t checksum = 0; - for (i = 0; i < EEP_DATA_SIZE; i++) { - - if ((c = getchar()) == EOF) { - return 1; - } - - checksum = crc16_update(checksum, c); - - if (putchar(c) == EOF) { - return 2; - } - } - putchar(checksum & 0xff); - putchar(checksum >> 8); - - return 0; -} -