| 305 | } |
| 306 | |
| 307 | uint16_t fletcher16(uint8_t const *data, size_t bytes) |
| 308 | { |
| 309 | uint16_t sum1 = 0xff, sum2 = 0xff; |
| 310 | |
| 311 | while (bytes) { |
| 312 | size_t tlen = bytes > 20 ? 20 : bytes; |
| 313 | bytes -= tlen; |
| 314 | do { |
| 315 | sum2 += sum1 += *data++; |
| 316 | } while (--tlen); |
| 317 | sum1 = (sum1 & 0xff) + (sum1 >> 8); |
| 318 | sum2 = (sum2 & 0xff) + (sum2 >> 8); |
| 319 | } |
| 320 | /* Second reduction step to reduce sums to 8 bits */ |
| 321 | sum1 = (sum1 & 0xff) + (sum1 >> 8); |
| 322 | sum2 = (sum2 & 0xff) + (sum2 >> 8); |
| 323 | return sum2 << 8 | sum1; |
| 324 | } |
| 325 | |
| 326 | void ConvertDfColor(int16_t index, RemoteFortressReader::ColorDefinition * out) |
| 327 | { |
no outgoing calls
no test coverage detected