Simplify the LFSR

This commit is contained in:
hkz 2025-07-16 15:33:17 +02:00
commit 2d0b26241c

View file

@ -15,10 +15,10 @@ uint8_t bit_count(uint8_t b) {
uint16_t lfsr_update(void) { uint16_t lfsr_update(void) {
static uint16_t lfsr = 0xF00D; static uint16_t lfsr = 0xF00D;
uint16_t bit;
bit = ((lfsr >> 0) ^ (lfsr >> 2) ^ (lfsr >> 3) ^ (lfsr >> 5)) & 1; lfsr ^= lfsr >> 7;
lfsr = (lfsr >> 1) | (bit << 15); lfsr ^= lfsr << 9;
lfsr ^= lfsr >> 13;
return lfsr; return lfsr;
} }