From 411d46531dfe117c973a9d03b6e01c3247fd8a5b Mon Sep 17 00:00:00 2001 From: true Date: Tue, 6 Aug 2024 00:56:30 -0700 Subject: [PATCH] fix prng_scale16() not actually scaling wrong type. oops. --- firmware/user/src/ledprog_pep.c | 3 +-- firmware/user/src/rand.c | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/firmware/user/src/ledprog_pep.c b/firmware/user/src/ledprog_pep.c index 742a241..7f7d3a1 100644 --- a/firmware/user/src/ledprog_pep.c +++ b/firmware/user/src/ledprog_pep.c @@ -418,8 +418,7 @@ static void pep_6_random(uint8_t tick) rand_flash_timeout--; if (!rand_timeout) { - rand_timeout = prng_scale16(20, 150); - rand_timeout <<= 7; + rand_timeout = prng_scale16(20*128, 150*128); rand_program = 6 * prng_get8(); rand_program >>= 8; diff --git a/firmware/user/src/rand.c b/firmware/user/src/rand.c index a8082ba..8034cae 100644 --- a/firmware/user/src/rand.c +++ b/firmware/user/src/rand.c @@ -151,7 +151,7 @@ static uint32_t tinymt32_temper (tinymt32_t* s) uint16_t prng_scale16(uint16_t min, uint16_t max) { - uint16_t rnd; + uint32_t rnd; rnd = prng_get16(); rnd *= (max - min);