- keymap files (c,h) are in src/Keymaps
- keymap files are added to the keymap library in src/Keymaps/CMakeLists.txt
- keymaps for the build are listed, along with positions, in /keymap_lists.cmake
- cmake generates a keymap jump table from the keymap lib and list
- tests mostly passing. Keymap structure for testing will be used as the model
for the app keymaps.
Remove initialization from data structure.
Replace the previous virtual_init() with a virtual_init() that initializes the
data structures to a default state
Create virtual_sync() function to push the state of virtual devices to the
physical outputs. Moved from the previous virtual_init() function.
The virtual device table is now built by direct calls to virtual_add() from the
setup function.
Toward issue [#23]
(WARNING: WIP) Gathered Work-in-progress on alternate keymap defs
Exploratory branch. Code is messy and untested.
Examining creating a module for each keymap rather than header file.
- asdf_modifiers.[ch]: Replace asdf_modifier_shiftlock_activate() with
asdf_modifier_shiftlock_on_activate() and
asdf_modifier_shiftlock_toggle_activate(). Instead of a configurateion
setting for shiftlock state to switch between SHIFTLOCK locks on, SHIFT turns
off, vs SHIFTLOCK toggles, and SHIFT turns off, create two different
SHIFTLOCK functions, one for each behavior, and allow the keymap to bind the
desired function.
- asdf.h: replace ACTION_SHIFTLOCK with ACTION_SHIFTLOCK_ON and
ACTION_SHIFTLOCK_TOGGLE.
- asdf.h: move start of ACTION codes from 0x80 to 0x90, since SOL-20 uses codes
from 0x80-0x8f.
- asdf.c: test for ACTION code using (code > ASDF_ACTION) instead of (code &
ASDF_ACTION), since ASDF_ACTION need not be a power of 2.
- asdf_modifiers.[ch] and other files: remove
asdf_modifiers_shiftlock_deactivate() and
asdf_modifiers_capslock_deactivate(), and any references to these functions
since they are null functions anyway.
- Split asdf_virtual.c into asdf_physical.c and asdf_virtual.c, moving the
functions that handle the physical resources to asdf_physical.c
- cleaned up nomenclature to be more consistent and less confusing.
- fixed keymap files and tests to use asdf_physical.c/h and new nomenclature.
- added asdf_physical.c to Makefiles.
Disallow assignment of invalid virtual or real devices
Disallow assignment of a real devices that have already been assigned.
add unit test cases for virtual devices