552f8d81b9
* Reduce PROGMEM usage for keycode map Bit-pack the keycode bool array to gain back a small amount of flash space. The trade-off is an increase in runtime instructions when running macros. It does make the code a bit harder to read, as well as maintain. For configs that use send_string() et al, it saves ~100 bytes. * Switch to macro and common definition Rewrite the array declarations so both the unpacked (original) and packed LUT arrays can use the same value definitions. This is done by defining a macro that "knows what to do". This makes the code much easier to read and maintain. * Fix macro typos and improve perf Pack the bits in a more efficient order for extraction. And also fix the copy/paste error in the macro... * Switch fully to packed LUT Some minor reformatting. Compile tested all sendstring_xyz.h to make sure they were converted properly. Also checked that an unconverted version would generate a compile error. * Apply whitespace suggestions from code review Co-Authored-By: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com> |
||
---|---|---|
.. | ||
api | ||
audio | ||
backlight | ||
debounce | ||
keymap_extras | ||
process_keycode | ||
rgb_matrix_animations | ||
rgb_matrix_runners | ||
serial_link | ||
split_common | ||
stm32 | ||
template | ||
tools | ||
visualizer | ||
api.c | ||
api.h | ||
color.c | ||
color.h | ||
config_common.h | ||
debounce.h | ||
dip_switch.c | ||
dip_switch.h | ||
dynamic_keymap.c | ||
dynamic_keymap.h | ||
dynamic_macro.h | ||
encoder.c | ||
encoder.h | ||
fauxclicky.c | ||
fauxclicky.h | ||
keycode_config.c | ||
keycode_config.h | ||
keymap_common.c | ||
keymap.h | ||
led_matrix_drivers.c | ||
led_matrix.c | ||
led_tables.c | ||
led_tables.h | ||
ledmatrix.h | ||
matrix_common.c | ||
matrix.c | ||
mcu_selection.mk | ||
pincontrol.h | ||
pointing_device.c | ||
pointing_device.h | ||
quantum_keycodes.h | ||
quantum.c | ||
quantum.h | ||
rgb_matrix_drivers.c | ||
rgb_matrix_types.h | ||
rgb_matrix.c | ||
rgb_matrix.h | ||
rgb.h | ||
rgblight_breathe_table.h | ||
rgblight_list.h | ||
rgblight_modes.h | ||
rgblight_post_config.h | ||
rgblight_reconfig.h | ||
rgblight.c | ||
rgblight.h | ||
send_string_keycodes.h | ||
variable_trace.c | ||
variable_trace.h | ||
velocikey.c | ||
velocikey.h | ||
via.c | ||
via.h |