aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile25
-rw-r--r--README3
m---------lib/hardware/arduino/avr0
m---------lib/hardware/keyboardio0
-rw-r--r--src/Macros.cpp13
-rw-r--r--src/Macros.h2
-rw-r--r--src/MagicCombo.cpp2
-rwxr-xr-xtools/apply-colormap5
8 files changed, 33 insertions, 17 deletions
diff --git a/Makefile b/Makefile
index 1c6b6ba..b14c3e8 100644
--- a/Makefile
+++ b/Makefile
@@ -16,12 +16,31 @@ LOCAL_CPP_SRCS = $(wildcard $(SOURCEDIR)/*.cpp)
LOCAL_INO_SRCS = $(wildcard $(SOURCEDIR)/*.ino)
USER_LIB_PATH = $(ALTERNATE_CORE_PATH)/libraries
-ARDUINO_LIBS = EEPROM Kaleidoscope Kaleidoscope-HIDAdaptor-KeyboardioHID KeyboardioHID KeyboardioScanner
-
-# extra definitions from boards.txt
+KALEIDOSCOPE_PLUGINS = Kaleidoscope-Colormap \
+ Kaleidoscope-EEPROM-Settings \
+ Kaleidoscope-Escape-OneShot \
+ Kaleidoscope-FocusSerial \
+ Kaleidoscope-Hardware-Model01 \
+ Kaleidoscope-Hardware-Keyboardio-Model01 \
+ Kaleidoscope-IdleLEDs \
+ Kaleidoscope-LED-ActiveModColor \
+ Kaleidoscope-LED-Palette-Theme \
+ Kaleidoscope-Macros \
+ Kaleidoscope-MagicCombo \
+ Kaleidoscope-MouseKeys \
+ Kaleidoscope-OneShot \
+ Kaleidoscope-OneShotMetaKeys \
+ Kaleidoscope-Ranges \
+ Kaleidoscope-TapDance
+ARDUINO_LIBS = EEPROM Kaleidoscope KeyboardioHID \
+ $(addprefix Kaleidoscope/plugins/,$(KALEIDOSCOPE_PLUGINS))
+
+# extra definitions from lib/hardware/keyboardio/avr/boards.txt
CXXFLAGS = -DARDUINO_AVR_MODEL01 \
-DUSB_MANUFACTURER="\"keyboardio\"" -DUSB_PRODUCT="\"Model 01\"" \
-DKALEIDOSCOPE_HARDWARE_H="\"Kaleidoscope-Hardware-Model01.h\""
+# cf. lib/hardware/keyboardio/avr/platform.txt
+CXXFLAGS_STD = -std=c++14 -fno-threadsafe-statics
ifeq ($(ENABLE_SERIAL),yes)
CXXFLAGS += -DENABLE_SERIAL
diff --git a/README b/README
index 3352f2b..5a67826 100644
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
Introduction
============
-A firmware Sketch for the Keyboardio Model 01. Based algerno's:
+A firmware Sketch for the Keyboardio Model 01. Based on algerno's:
https://git.madhouse-project.org/algernon/Model01-Sketch#base-layer
@@ -31,7 +31,6 @@ Initialize (or update) submodules:
~$ git -C lib/hardware/keyboardio submodule update --init --recursive \
"avr/bootloaders/*" \
"avr/libraries/Kaleidoscope" \
- "avr/libraries/Kaleidoscope-HIDAdaptor-KeyboardioHID" \
"avr/libraries/Keyboardio*"
~$ make
diff --git a/lib/hardware/arduino/avr b/lib/hardware/arduino/avr
-Subproject 2663be17272e19f00c55f3f2d8f1ebfac47158d
+Subproject b3243815e2ed8c72f9ac3669e69632a590b1d04
diff --git a/lib/hardware/keyboardio b/lib/hardware/keyboardio
-Subproject 29790b920183a4e24117389a1809f19ad04ebee
+Subproject a9165613d1aab35d8be365b54976460165d790f
diff --git a/src/Macros.cpp b/src/Macros.cpp
index 27b6b21..529bfca 100644
--- a/src/Macros.cpp
+++ b/src/Macros.cpp
@@ -16,6 +16,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
**********************************************************************/
+#include <Kaleidoscope.h>
#include <Kaleidoscope-OneShot.h>
#include "Macros.h"
@@ -29,18 +30,16 @@
* https://github.com/keyboardio/Kaleidoscope/issues/647
*/
#define TopRow(k1, k2) \
- if (keyToggledOn(keyState)) { \
- if (kaleidoscope::Runtime.hid().keyboard().isModifierKeyActive(Key_LeftControl) || \
- ::OneShot.isModifierActive(Key_LeftControl) || \
- kaleidoscope::Runtime.hid().keyboard().isModifierKeyActive(Key_RightAlt) || \
- ::OneShot.isModifierActive(Key_RightAlt)) \
+ if (keyToggledOn(event.state)) { \
+ if (Kaleidoscope.hid().keyboard().wasModifierKeyActive(Key_LeftControl) || \
+ Kaleidoscope.hid().keyboard().wasModifierKeyActive(Key_RightAlt)) \
return MACRO(Dr(k2)); \
else \
return MACRO(Dr(k1)); \
};
-const macro_t *macroAction(uint8_t macroIndex, uint8_t keyState) {
- switch (macroIndex) {
+const macro_t *macroAction(uint8_t macro_id, KeyEvent &event) {
+ switch (macro_id) {
case AT: TopRow(LSHIFT(Key_2), Key_2);
case STAR: TopRow(LSHIFT(Key_8), Key_3);
case DOLLAR: TopRow(LSHIFT(Key_4), Key_4);
diff --git a/src/Macros.h b/src/Macros.h
index 829308c..5e4395c 100644
--- a/src/Macros.h
+++ b/src/Macros.h
@@ -34,4 +34,4 @@ enum {
, RIGHT_BRACKET
};
-extern const macro_t *macroAction(uint8_t macroIndex, uint8_t keyState);
+extern const macro_t *macroAction(uint8_t macro_id, KeyEvent &event);
diff --git a/src/MagicCombo.cpp b/src/MagicCombo.cpp
index a67566e..f24e221 100644
--- a/src/MagicCombo.cpp
+++ b/src/MagicCombo.cpp
@@ -21,5 +21,5 @@
#include "MagicCombo.h"
void comboMiddleClick(uint8_t combo_index) {
- ::Macros.play(MACRO(T(mouseBtnM)));
+ Macros.play(MACRO(T(mouseBtnM)));
}
diff --git a/tools/apply-colormap b/tools/apply-colormap
index 56d90e0..d59ddd2 100755
--- a/tools/apply-colormap
+++ b/tools/apply-colormap
@@ -73,9 +73,8 @@ colormap() {
}
palette() {
- printf "palette"
- sed "/^\\s*#/d; s/\\s*#.*//" <"$PALETTE" \
- | sed -nr "1h;1!H; \${x; s/^\\s*/ /; s/\s+/ /g; p}"
+ { echo "palette"; sed "/^\\s*#/d; s/\\s*#.*//" <"$PALETTE"; } \
+ | sed -r ':a; $!N; s/\n/ /; ta; s/\s+/ /g'
}
serial_send() {