From fbed17d3260d1fca312d655818cc2394654615aa Mon Sep 17 00:00:00 2001 From: Selene ToyKeeper Date: Tue, 2 May 2023 08:47:42 -0600 Subject: D4v2: added the rest of the aux RGB colors as channel modes, and set aux "white" as the mode it uses to blink out numbers --- spaghetti-monster/anduril/cfg-emisar-d4v2.h | 3 +++ spaghetti-monster/chan-rgbaux.c | 22 +++++++++++++++++++--- spaghetti-monster/chan-rgbaux.h | 4 ++++ 3 files changed, 26 insertions(+), 3 deletions(-) (limited to 'spaghetti-monster') diff --git a/spaghetti-monster/anduril/cfg-emisar-d4v2.h b/spaghetti-monster/anduril/cfg-emisar-d4v2.h index 69023d1..f68e50f 100644 --- a/spaghetti-monster/anduril/cfg-emisar-d4v2.h +++ b/spaghetti-monster/anduril/cfg-emisar-d4v2.h @@ -45,6 +45,9 @@ // show each channel while it scroll by in the menu #define USE_CONFIG_COLORS +// blink numbers on the aux LEDs by default +#define DEFAULT_BLINK_CHANNEL CM_AUXWHT + // use aux red + aux blue for police strobe #define USE_POLICE_COLOR_STROBE_MODE #define POLICE_STROBE_USES_AUX diff --git a/spaghetti-monster/chan-rgbaux.c b/spaghetti-monster/chan-rgbaux.c index 355f246..19d18a6 100644 --- a/spaghetti-monster/chan-rgbaux.c +++ b/spaghetti-monster/chan-rgbaux.c @@ -4,15 +4,31 @@ #pragma once void set_level_auxred(uint8_t level) { - rgb_led_set(!(!(level)) << 1); // red, high (or off) + rgb_led_set(!(!(level)) * 0b000010); // red, high (or off) +} + +void set_level_auxyel(uint8_t level) { + rgb_led_set(!(!(level)) * 0b001010); // red+green, high (or off) } void set_level_auxgrn(uint8_t level) { - rgb_led_set(!(!(level)) << 3); // green, high (or off) + rgb_led_set(!(!(level)) * 0b001000); // green, high (or off) +} + +void set_level_auxcyn(uint8_t level) { + rgb_led_set(!(!(level)) * 0b101000); // green+blue, high (or off) } void set_level_auxblu(uint8_t level) { - rgb_led_set(!(!(level)) << 5); // blue, high (or off) + rgb_led_set(!(!(level)) * 0b100000); // blue, high (or off) +} + +void set_level_auxprp(uint8_t level) { + rgb_led_set(!(!(level)) * 0b100010); // red+blue, high (or off) +} + +void set_level_auxwht(uint8_t level) { + rgb_led_set(!(!(level)) * 0b101010); // red+green+blue, high (or off) } bool gradual_tick_null(uint8_t gt) { return true; } // do nothing diff --git a/spaghetti-monster/chan-rgbaux.h b/spaghetti-monster/chan-rgbaux.h index 5c1c5c3..d19f6ad 100644 --- a/spaghetti-monster/chan-rgbaux.h +++ b/spaghetti-monster/chan-rgbaux.h @@ -4,8 +4,12 @@ #pragma once void set_level_auxred(uint8_t level); +void set_level_auxyel(uint8_t level); void set_level_auxgrn(uint8_t level); +void set_level_auxcyn(uint8_t level); void set_level_auxblu(uint8_t level); +void set_level_auxprp(uint8_t level); +void set_level_auxwht(uint8_t level); bool gradual_tick_null(uint8_t gt); -- cgit v1.2.3