mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-26 19:18:03 +06:00
dfab177f88
* add temporary file that is rgblight.c call graph * add rgblight_update_hook() * update rgblight-call-graph.dot (temporary file) * add more hook point * add TODO comment * temporary Revert "add TODO comment" This reverts commit df6165aac9b3a31d1d3e31ce52aadc134b84eac2. * temporary Revert "add more hook point" This reverts commit 64592b06f3bcdaac47c59f922018a273bef76776. * temporary Revert "add rgblight_update_hook()" This reverts commit 432b74c912ed4333e6633e20a1bcda10c6a10eaf. * add rgblight_update_hook() * add more hook point * add TODO comment * implement rgblight_update_hook() * remove rgblight_update_hook(), add RGBLIGHT_SPLIT_SET_CHANGE_XXXX rgblight_update_hook() is too large. change to simple flag setting. * shrink rgblight_config_t * implement rgblight_update_sync() Note: The animation synchronization process has not been implemented yet. * update quantum/rgblight-call-graph.dot (temporary file) * rmove quantum/rgblight-call-graph.dot (temporary file) * update rgblight.c * Add temporary code to Helix keyboard 'five_rows' keymap to test rgblight.c . * fix build break rgblight_update_sync() when all animation off * fix quantum/rgblight.c:rgblight_disable_XX() add RGBLIGHT_SPLIT_SET_CHANGE_MODE * quantum/rgblight.c change code order: move rgblight_update_sync() * add mode_base_table[] to quantum/rgblight.c * quantum/rgblight.c use mode_base_table[] and rgblight_status.base_mode * quantum/rgblkght.c animation timer integration * quantum/rgblkght.c add animation sync for split keyboard * fix mode_base_table[] and snake effect * fix build break keyboards/mxss. keyboards/mxss's local rgblight.c need old version rgblight.h * rgblight.c: fix animation sync * quantum/rgblight.c: fix snake effect sync * quantum/rgblight.c: animation sync interverl 30 sec * quantum/rgblight.c: fix rgblight_effect_rainbow_swirl() and rgblight_effect_knight() * quantum/rgblight.c: add macro RGBLIGHT_SPLIT_ANIMATION * cherry-pick from 'rgblight_modes.h sample implementation' * fix RGBLIGHT_SPLIT_ANIMATION check position * Update temporary code in Helix keyboard 'five_rows' keymap to test rgblight.c * Reduce the firmware size by 1500 bytes when rgblight_effect_breathing() is enabled. * Changed to rgblight_sethsv_eeprom_helper() for easier reading. * add fail-safe code to quantum/rgblight.c:rgblight_task(),rgblight_timer_enable() * remove temporary code in Helix keyboard 'five_rows' keymap * quantum/rgblight.c: add split-keyboard master side sync functions add functions: uint8_t rgblight_get_change_flags(void); void rgblight_clear_change_flags(void); void rgblight_get_syncinfo(rgblight_syncinfo_t *syncinfo); change function: void rgblight_update_sync(rgblight_syncinfo_t *syncinfo, bool write_to_eeprom); * Change rgblight_update_sync() to use write_to_eeprom. * remove TODO comment from quantum/rgblight.h * Revert "fix build break keyboards/mxss." This reverts commit 90b9a1aa7d8af226751500e49e3ea0214cc4e024. (Separated this change into the newly opened PR #5461.) * Revert "Reduce the firmware size by 1500 bytes when rgblight_effect_breathing() is enabled." This reverts commit b61004e63e82cf5334cee4def4ba10cffa88885f. * update quantum/rgblight.c: Code size reduction when not using RGBLIGHT_SPLIT. * Add temporary code to Helix keyboard 'five_rows' keymap to test rgblight.c . * add temporary pdhelix(Patched Helix) code * Add temporary code to split_common/transport.c to test rgblight.c. * Finish testing rgblight.c with helix keyboard. Revert "Add temporary code to Helix keyboard 'five_rows' keymap to test rgblight.c ." This reverts commit 0bf81a4723a977adc0cb09b4272ee5c9b4f2bbbb. * Finish testing rgblight.c with quantum/split_common code. Revert "Add temporary code to split_common/transport.c to test rgblight.c." This reverts commit 71db3e24eef40d4c455fb9fd1664e4487c9d927a. * remove temporary pdhelix(Patched Helix) code This reverts commit 5287e51a394741bcb6028c7cfc0dd0c984645f76. * Added description of RGBLIGHT_SPLIT macro to docs/feature_rgblight.md. * add RGBLIGHT_SPLIT_SET_CHANGE_HSVS to rgblight_init() * Changed to restart animation only when changing mode. When changing hue, sat and val, the animation is not restarted and continues.
68 lines
2.4 KiB
C
68 lines
2.4 KiB
C
#ifdef _RGBM_SINGLE_STATIC
|
|
_RGBM_SINGLE_STATIC( STATIC_LIGHT )
|
|
#ifdef RGBLIGHT_EFFECT_BREATHING
|
|
_RGBM_MULTI_DYNAMIC( BREATHING )
|
|
_RGBM_TMP_DYNAMIC( breathing_3, BREATHING )
|
|
_RGBM_TMP_DYNAMIC( breathing_4, BREATHING )
|
|
_RGBM_TMP_DYNAMIC( BREATHING_end, BREATHING )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_RAINBOW_MOOD
|
|
_RGBM_MULTI_DYNAMIC( RAINBOW_MOOD )
|
|
_RGBM_TMP_DYNAMIC( rainbow_mood_7, RAINBOW_MOOD )
|
|
_RGBM_TMP_DYNAMIC( RAINBOW_MOOD_end, RAINBOW_MOOD )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
|
_RGBM_MULTI_DYNAMIC( RAINBOW_SWIRL )
|
|
_RGBM_TMP_DYNAMIC( rainbow_swirl_10, RAINBOW_SWIRL )
|
|
_RGBM_TMP_DYNAMIC( rainbow_swirl_11, RAINBOW_SWIRL )
|
|
_RGBM_TMP_DYNAMIC( rainbow_swirl_12, RAINBOW_SWIRL )
|
|
_RGBM_TMP_DYNAMIC( rainbow_swirl_13, RAINBOW_SWIRL )
|
|
_RGBM_TMP_DYNAMIC( RAINBOW_SWIRL_end, RAINBOW_SWIRL )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_SNAKE
|
|
_RGBM_MULTI_DYNAMIC( SNAKE )
|
|
_RGBM_TMP_DYNAMIC( snake_16, SNAKE )
|
|
_RGBM_TMP_DYNAMIC( snake_17, SNAKE )
|
|
_RGBM_TMP_DYNAMIC( snake_18, SNAKE )
|
|
_RGBM_TMP_DYNAMIC( snake_19, SNAKE )
|
|
_RGBM_TMP_DYNAMIC( SNAKE_end, SNAKE )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_KNIGHT
|
|
_RGBM_MULTI_DYNAMIC( KNIGHT )
|
|
_RGBM_TMP_DYNAMIC( knight_22, KNIGHT )
|
|
_RGBM_TMP_DYNAMIC( KNIGHT_end, KNIGHT )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_CHRISTMAS
|
|
_RGBM_SINGLE_DYNAMIC( CHRISTMAS )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_STATIC_GRADIENT
|
|
_RGBM_MULTI_STATIC( STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_26, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_27, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_28, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_29, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_30, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_31, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_32, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( static_gradient_33, STATIC_GRADIENT )
|
|
_RGBM_TMP_STATIC( STATIC_GRADIENT_end, STATIC_GRADIENT )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_RGB_TEST
|
|
_RGBM_SINGLE_DYNAMIC( RGB_TEST )
|
|
#endif
|
|
#ifdef RGBLIGHT_EFFECT_ALTERNATING
|
|
_RGBM_SINGLE_DYNAMIC( ALTERNATING )
|
|
#endif
|
|
//// Add a new mode here.
|
|
// #ifdef RGBLIGHT_EFFECT_<name>
|
|
// _RGBM_<SINGLE|MULTI>_<STATIC|DYNAMIC>( <name> )
|
|
// #endif
|
|
#endif
|
|
|
|
#undef _RGBM_SINGLE_STATIC
|
|
#undef _RGBM_SINGLE_DYNAMIC
|
|
#undef _RGBM_MULTI_STATIC
|
|
#undef _RGBM_MULTI_DYNAMIC
|
|
#undef _RGBM_TMP_STATIC
|
|
#undef _RGBM_TMP_DYNAMIC
|