aboutsummaryrefslogtreecommitdiffstats
path: root/tmk_core
diff options
context:
space:
mode:
authorJoe Wasson <jwasson+github@gmail.com>2017-07-26 21:51:41 -0700
committerJack Humbert <jack.humb@gmail.com>2017-07-27 16:10:36 -0400
commitf30f12ec8122b7c025ff83c5e38e171c4107052b (patch)
treeeebbac46d723f8adea852275c4ea37e2dfe06183 /tmk_core
parent5987f67989c1b8f5fbd108d4dae21a227bc2f99c (diff)
downloadfirmware-f30f12ec8122b7c025ff83c5e38e171c4107052b.tar.gz
firmware-f30f12ec8122b7c025ff83c5e38e171c4107052b.tar.bz2
firmware-f30f12ec8122b7c025ff83c5e38e171c4107052b.zip
Add support for GeminiPR steno protocol.
This protocol breaks out "duplicate" keys into their own entry in the packet so that more complicated logic can be done on the software side, including support for additional languages and alternative theories.
Diffstat (limited to 'tmk_core')
-rw-r--r--tmk_core/common/eeconfig.c3
-rw-r--r--tmk_core/common/eeconfig.h1
-rw-r--r--tmk_core/common/keyboard.c6
3 files changed, 10 insertions, 0 deletions
diff --git a/tmk_core/common/eeconfig.c b/tmk_core/common/eeconfig.c
index 140d2b85b..e2eb4a38e 100644
--- a/tmk_core/common/eeconfig.c
+++ b/tmk_core/common/eeconfig.c
@@ -19,6 +19,9 @@ void eeconfig_init(void)
#ifdef RGBLIGHT_ENABLE
eeprom_update_dword(EECONFIG_RGBLIGHT, 0);
#endif
+#ifdef STENO_ENABLE
+ eeprom_update_byte(EECONFIG_STENOMODE, 0);
+#endif
}
void eeconfig_enable(void)
diff --git a/tmk_core/common/eeconfig.h b/tmk_core/common/eeconfig.h
index 280dc7ab6..ce60ca866 100644
--- a/tmk_core/common/eeconfig.h
+++ b/tmk_core/common/eeconfig.h
@@ -34,6 +34,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define EECONFIG_AUDIO (uint8_t *)7
#define EECONFIG_RGBLIGHT (uint32_t *)8
#define EECONFIG_UNICODEMODE (uint8_t *)12
+#define EECONFIG_STENOMODE (uint8_t *)13
/* debug bit */
diff --git a/tmk_core/common/keyboard.c b/tmk_core/common/keyboard.c
index 97a8f1cd8..9466e10e2 100644
--- a/tmk_core/common/keyboard.c
+++ b/tmk_core/common/keyboard.c
@@ -51,6 +51,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#ifdef RGBLIGHT_ENABLE
# include "rgblight.h"
#endif
+#ifdef STENO_ENABLE
+# include "process_steno.h"
+#endif
#ifdef FAUXCLICKY_ENABLE
# include "fauxclicky.h"
#endif
@@ -139,6 +142,9 @@ void keyboard_init(void) {
#ifdef RGBLIGHT_ENABLE
rgblight_init();
#endif
+#ifdef STENO_ENABLE
+ steno_init();
+#endif
#ifdef FAUXCLICKY_ENABLE
fauxclicky_init();
#endif