summaryrefslogtreecommitdiffstats
path: root/keyboards/ca66/ca66.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/ca66/ca66.c')
-rw-r--r--keyboards/ca66/ca66.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/keyboards/ca66/ca66.c b/keyboards/ca66/ca66.c
index 91f4826f9..6f24a895f 100644
--- a/keyboards/ca66/ca66.c
+++ b/keyboards/ca66/ca66.c
@@ -1 +1,30 @@
#include "ca66.h"
+#include "config.h"
+
+void bootmagic_lite(void)
+{
+ // The lite version of TMK's bootmagic.
+ // 100% less potential for accidentally making the
+ // keyboard do stupid things.
+
+ // We need multiple scans because debouncing can't be turned off.
+ matrix_scan();
+ wait_ms(DEBOUNCING_DELAY);
+ matrix_scan();
+
+ // If the Esc (matrix 0,0) is held down on power up,
+ // reset the EEPROM valid state and jump to bootloader.
+ if ( matrix_get_row(0) & (1<<0) )
+ {
+ // Set the TMK/QMK EEPROM state as invalid.
+ eeconfig_disable();
+ // Jump to bootloader.
+ bootloader_jump();
+ }
+}
+
+void matrix_init_kb(void)
+{
+ bootmagic_lite();
+ matrix_init_user();
+}