From 4682226e20d17437c0a6f67f5d6160432074d948 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 11 Dec 2023 23:06:18 +0000 Subject: Keymap introspection for Dip Switches (#22543) --- quantum/keymap_introspection.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'quantum/keymap_introspection.c') diff --git a/quantum/keymap_introspection.c b/quantum/keymap_introspection.c index e4a01d2e9a..71e3b429ea 100644 --- a/quantum/keymap_introspection.c +++ b/quantum/keymap_introspection.c @@ -71,6 +71,24 @@ __attribute__((weak)) uint16_t keycode_at_encodermap_location(uint8_t layer_num, #endif // defined(ENCODER_ENABLE) && defined(ENCODER_MAP_ENABLE) +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Dip Switch mapping + +#if defined(DIP_SWITCH_ENABLE) && defined(DIP_SWITCH_MAP_ENABLE) + +uint16_t keycode_at_dip_switch_map_location_raw(uint8_t switch_idx, bool on) { + if (switch_idx < NUM_DIP_SWITCHES) { + return pgm_read_word(&dip_switch_map[switch_idx][!!on]); + } + return KC_TRNS; +} + +uint16_t keycode_at_dip_switch_map_location(uint8_t switch_idx, bool on) { + return keycode_at_dip_switch_map_location_raw(switch_idx, on); +} + +#endif // defined(DIP_SWITCH_ENABLE) && defined(DIP_SWITCH_MAP_ENABLE) + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Combos -- cgit v1.2.3