logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git
commit: bb9625ba550dbe3bbd2967f488c4ee92815637f0
parent 11db924a31de6f075fd9d9fc54bb0ab89fe7ad50
Author: Ryan <fauxpark@gmail.com>
Date:   Thu, 24 Oct 2024 15:27:24 +1100

RGBLight: Improve RGB Test animation (#24477)


Diffstat:

Mquantum/rgblight/rgblight.c28++++++----------------------
1 file changed, 6 insertions(+), 22 deletions(-)

diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c @@ -1342,29 +1342,13 @@ void rgblight_effect_christmas(animation_status_t *anim) { __attribute__((weak)) const uint16_t RGBLED_RGBTEST_INTERVALS[] PROGMEM = {1024}; void rgblight_effect_rgbtest(animation_status_t *anim) { - static uint8_t maxval = 0; - uint8_t g; - uint8_t r; - uint8_t b; - - if (maxval == 0) { - rgb_t rgb = hsv_to_rgb((hsv_t){0, 255, RGBLIGHT_LIMIT_VAL}); - maxval = rgb.r; - } - g = r = b = 0; - switch (anim->pos) { - case 0: - r = maxval; - break; - case 1: - g = maxval; - break; - case 2: - b = maxval; - break; - } + uint8_t val = rgblight_get_val(); + + uint8_t r = anim->pos & 1 ? val : 0; + uint8_t g = anim->pos & 2 ? val : 0; + uint8_t b = anim->pos & 4 ? val : 0; rgblight_setrgb(r, g, b); - anim->pos = (anim->pos + 1) % 3; + anim->pos = (anim->pos + 1) % 8; } #endif