]> git.donarmstrong.com Git - tmk_firmware.git/blobdiff - common/command.c
Add bootmagic.c and fix bootloader_jump
[tmk_firmware.git] / common / command.c
index 2d01c95e6a9bca5a1cf683f77873a77efc47083a..b82d1884cec5648a5d81c275080b661716fb04d1 100644 (file)
@@ -27,6 +27,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include "keyboard.h"
 #include "bootloader.h"
 #include "layer_switch.h"
+#include "eeconfig.h"
 #include "command.h"
 
 #ifdef MOUSEKEY_ENABLE
@@ -108,6 +109,7 @@ static void command_common_help(void)
     print("v:  print device version & info\n");
     print("t:  print timer count\n");
     print("s:  print status\n");
+    print("e:  print eeprom boot config\n");
 #ifdef NKRO_ENABLE
     print("n:  toggle NKRO\n");
 #endif
@@ -121,10 +123,28 @@ static void command_common_help(void)
     print("Paus:       jump to bootloader\n");
 }
 
+static void print_eeprom_config(void)
+{
+    uint8_t eebyte;
+    
+    eebyte = eeconfig_read_debug();
+    print("debug: "); print_hex8(eebyte); print("\n");
+
+    eebyte = eeconfig_read_defalt_layer();
+    print("defalt_layer: "); print_hex8(eebyte); print("\n");
+
+    eebyte = eeconfig_read_modifier();
+    print("modifiers: "); print_hex8(eebyte); print("\n");
+}
+
 static bool command_common(uint8_t code)
 {
     static host_driver_t *host_driver = 0;
     switch (code) {
+        case KC_E:
+            print("eeprom config\n");
+            print_eeprom_config();
+            break;
         case KC_CAPSLOCK:
             if (host_get_driver()) {
                 host_driver = host_get_driver();
@@ -543,9 +563,8 @@ static uint8_t numkey2num(uint8_t code)
 
 static void switch_default_layer(uint8_t layer)
 {
-    // TODO check existence of layer or whether it can be used as default layer
-    print("switch_default_layer: "); print_dec(default_layer); print(" to "); print_dec(layer); 
-    default_layer = layer;
-    layer_switch_clear();
+    print("switch_default_layer: "); print_dec(default_layer); print(" to "); print_dec(layer); print("\n");
+    default_layer_set(layer);
+    overlay_clear();
     clear_keyboard();
 }