summaryrefslogtreecommitdiffstats
path: root/tmk_core/common/command.c
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/common/command.c')
-rw-r--r--tmk_core/common/command.c78
1 files changed, 51 insertions, 27 deletions
diff --git a/tmk_core/common/command.c b/tmk_core/common/command.c
index b4cd3ca56b..54d6117fd1 100644
--- a/tmk_core/common/command.c
+++ b/tmk_core/common/command.c
@@ -16,7 +16,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <stdint.h>
#include <stdbool.h>
-#include <util/delay.h>
+#include "wait.h"
#include "keycode.h"
#include "host.h"
#include "keymap.h"
@@ -33,22 +33,28 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "led.h"
#include "command.h"
#include "backlight.h"
+#include "quantum.h"
+#include "version.h"
#ifdef MOUSEKEY_ENABLE
#include "mousekey.h"
#endif
#ifdef PROTOCOL_PJRC
-# include "usb_keyboard.h"
-# ifdef EXTRAKEY_ENABLE
-# include "usb_extra.h"
-# endif
+ #include "usb_keyboard.h"
+ #ifdef EXTRAKEY_ENABLE
+ #include "usb_extra.h"
+ #endif
#endif
#ifdef PROTOCOL_VUSB
-# include "usbdrv.h"
+ #include "usbdrv.h"
#endif
+#ifdef AUDIO_ENABLE
+ #include "audio.h"
+#endif /* AUDIO_ENABLE */
+
static bool command_common(uint8_t code);
static void command_common_help(void);
@@ -61,7 +67,6 @@ static bool mousekey_console(uint8_t code);
static void mousekey_console_help(void);
#endif
-static uint8_t numkey2num(uint8_t code);
static void switch_default_layer(uint8_t layer);
@@ -99,12 +104,14 @@ bool command_proc(uint8_t code)
bool command_extra(uint8_t code) __attribute__ ((weak));
bool command_extra(uint8_t code)
{
+ (void)code;
return false;
}
bool command_console_extra(uint8_t code) __attribute__ ((weak));
bool command_console_extra(uint8_t code)
{
+ (void)code;
return false;
}
@@ -122,7 +129,7 @@ static void command_common_help(void)
STR(MAGIC_KEY_VERSION ) ": Version\n"
STR(MAGIC_KEY_STATUS ) ": Status\n"
STR(MAGIC_KEY_CONSOLE ) ": Activate Console Mode\n"
-
+
#if MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
STR(MAGIC_KEY_LAYER0 ) ": Switch to Layer 0\n"
STR(MAGIC_KEY_LAYER1 ) ": Switch to Layer 1\n"
@@ -136,11 +143,11 @@ static void command_common_help(void)
STR(MAGIC_KEY_LAYER9 ) ": Switch to Layer 9\n"
#endif
-#if MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
+#if MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
"F1-F10: Switch to Layer 0-9 (F10 = L0)\n"
#endif
-#if MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
+#if MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
"0-9: Switch to Layer 0-9\n"
#endif
@@ -174,7 +181,7 @@ static void print_version(void)
print("VID: " STR(VENDOR_ID) "(" STR(MANUFACTURER) ") "
"PID: " STR(PRODUCT_ID) "(" STR(PRODUCT) ") "
"VER: " STR(DEVICE_VER) "\n");
- print("BUILD: " STR(VERSION) " (" __TIME__ " " __DATE__ ")\n");
+ print("BUILD: " STR(QMK_VERSION) " (" __TIME__ " " __DATE__ ")\n");
/* build options */
print("OPTIONS:"
@@ -213,8 +220,11 @@ static void print_version(void)
" " STR(BOOTLOADER_SIZE) "\n");
print("GCC: " STR(__GNUC__) "." STR(__GNUC_MINOR__) "." STR(__GNUC_PATCHLEVEL__)
+#if defined(__AVR__)
" AVR-LIBC: " __AVR_LIBC_VERSION_STRING__
- " AVR_ARCH: avr" STR(__AVR_ARCH__) "\n");
+ " AVR_ARCH: avr" STR(__AVR_ARCH__)
+#endif
+ "\n");
return;
}
@@ -228,9 +238,9 @@ static void print_status(void)
print_val_hex8(keyboard_protocol);
print_val_hex8(keyboard_idle);
#ifdef NKRO_ENABLE
- print_val_hex8(keyboard_nkro);
+ print_val_hex8(keymap_config.nkro);
#endif
- print_val_hex32(timer_count);
+ print_val_hex32(timer_read32());
#ifdef PROTOCOL_PJRC
print_val_hex8(UDCON);
@@ -251,6 +261,7 @@ static void print_status(void)
#ifdef BOOTMAGIC_ENABLE
static void print_eeconfig(void)
{
+#ifndef NO_PRINT
print("default_layer: "); print_dec(eeconfig_read_default_layer()); print("\n");
debug_config_t dc;
@@ -279,9 +290,12 @@ static void print_eeconfig(void)
print("backlight_config.raw: "); print_hex8(bc.raw); print("\n");
print(".enable: "); print_dec(bc.enable); print("\n");
print(".level: "); print_dec(bc.level); print("\n");
-#endif
+#endif /* BACKLIGHT_ENABLE */
+
+#endif /* !NO_PRINT */
+
}
-#endif
+#endif /* BOOTMAGIC_ENABLE */
static bool command_common(uint8_t code)
{
@@ -305,7 +319,7 @@ static bool command_common(uint8_t code)
#ifdef BOOTMAGIC_ENABLE
// print stored eeprom config
- case MAGIC_KC(MAGIC_KEY_EEPROM):
+ case MAGIC_KC(MAGIC_KEY_EEPROM):
print("eeconfig:\n");
print_eeconfig();
break;
@@ -348,7 +362,12 @@ static bool command_common(uint8_t code)
case MAGIC_KC(MAGIC_KEY_BOOTLOADER):
clear_keyboard(); // clear to prevent stuck keys
print("\n\nJumping to bootloader... ");
- _delay_ms(1000);
+ #ifdef AUDIO_ENABLE
+ stop_all_notes();
+ shutdown_user();
+ #else
+ wait_ms(1000);
+ #endif
bootloader_jump(); // not return
break;
@@ -369,7 +388,7 @@ static bool command_common(uint8_t code)
break;
// debug matrix toggle
- case MAGIC_KC(MAGIC_KEY_DEBUG_MATRIX):
+ case MAGIC_KC(MAGIC_KEY_DEBUG_MATRIX):
debug_matrix = !debug_matrix;
if (debug_matrix) {
print("\nmatrix: on\n");
@@ -380,7 +399,7 @@ static bool command_common(uint8_t code)
break;
// debug keyboard toggle
- case MAGIC_KC(MAGIC_KEY_DEBUG_KBD):
+ case MAGIC_KC(MAGIC_KEY_DEBUG_KBD):
debug_keyboard = !debug_keyboard;
if (debug_keyboard) {
print("\nkeyboard: on\n");
@@ -416,11 +435,12 @@ static bool command_common(uint8_t code)
// NKRO toggle
case MAGIC_KC(MAGIC_KEY_NKRO):
clear_keyboard(); // clear to prevent stuck keys
- keyboard_nkro = !keyboard_nkro;
- if (keyboard_nkro)
+ keymap_config.nkro = !keymap_config.nkro;
+ if (keymap_config.nkro) {
print("NKRO: on\n");
- else
+ } else {
print("NKRO: off\n");
+ }
break;
#endif
@@ -551,6 +571,7 @@ static uint8_t mousekey_param = 0;
static void mousekey_param_print(void)
{
+#ifndef NO_PRINT
print("\n\t- Values -\n");
print("1: delay(*10ms): "); pdec(mk_delay); print("\n");
print("2: interval(ms): "); pdec(mk_interval); print("\n");
@@ -558,6 +579,8 @@ static void mousekey_param_print(void)
print("4: time_to_max: "); pdec(mk_time_to_max); print("\n");
print("5: wheel_max_speed: "); pdec(mk_wheel_max_speed); print("\n");
print("6: wheel_time_to_max: "); pdec(mk_wheel_time_to_max); print("\n");
+#endif /* !NO_PRINT */
+
}
//#define PRINT_SET_VAL(v) print(#v " = "); print_dec(v); print("\n");
@@ -677,7 +700,7 @@ static void mousekey_console_help(void)
"pgdown: -10\n"
"\n"
"speed = delta * max_speed * (repeat / time_to_max)\n");
- xprintf("where delta: cursor=%d, wheel=%d\n"
+ xprintf("where delta: cursor=%d, wheel=%d\n"
"See http://en.wikipedia.org/wiki/Mouse_keys\n", MOUSEKEY_MOVE_DELTA, MOUSEKEY_WHEEL_DELTA);
}
@@ -734,10 +757,11 @@ static bool mousekey_console(uint8_t code)
print("?");
return false;
}
- if (mousekey_param)
+ if (mousekey_param) {
xprintf("M%d> ", mousekey_param);
- else
+ } else {
print("M>" );
+ }
return true;
}
#endif
@@ -746,7 +770,7 @@ static bool mousekey_console(uint8_t code)
/***********************************************************
* Utilities
***********************************************************/
-static uint8_t numkey2num(uint8_t code)
+uint8_t numkey2num(uint8_t code)
{
switch (code) {
case KC_1: return 1;