7 #define PACKED __attribute__ ((__packed__))
13 #pragma pack( push, 1 )
16 #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES)
17 #define RGB_MATRIX_KEYREACTIVE_ENABLED
21 #ifndef LED_HITS_TO_REMEMBER
22 #define LED_HITS_TO_REMEMBER 8
23 #endif // LED_HITS_TO_REMEMBER
25 #ifdef RGB_MATRIX_KEYREACTIVE_ENABLED
26 typedef struct PACKED {
28 uint8_t x[LED_HITS_TO_REMEMBER];
29 uint8_t y[LED_HITS_TO_REMEMBER];
30 uint8_t index[LED_HITS_TO_REMEMBER];
31 uint16_t tick[LED_HITS_TO_REMEMBER];
33 #endif // RGB_MATRIX_KEYREACTIVE_ENABLED
35 typedef enum rgb_task_states {
42 typedef uint8_t led_flags_t;
44 typedef struct PACKED {
50 typedef struct PACKED {
51 // Global tick at 20 Hz
53 // Ticks since this key was last hit.
57 typedef struct PACKED {
65 uint8_t row:4; // 16 max
66 uint8_t col:4; // 16 max
70 typedef struct PACKED {
71 matrix_co_t matrix_co;
91 uint8_t speed :8;//EECONFIG needs to be increased to support this