Calculates the Fletcher 16bit checksum over the first length bytes
of data.
Source
static int fletcher16(List<int> data, int length) {
int sum1 = 0xB5, sum2 = 0xC3;
for (int i = 0; i < length; i++) {
sum1 = (sum1 + data[i]) % 255;
sum2 = (sum2 + sum1) % 255;
}
return (sum2 << 8) | sum1;
}