summaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
Diffstat (limited to 'quantum')
-rw-r--r--quantum/keymap_common.c7
-rw-r--r--quantum/keymap_extras/keymap_german_ch.h4
-rw-r--r--quantum/process_keycode/process_printer.c22
-rw-r--r--quantum/process_keycode/process_printer.h2
-rw-r--r--quantum/process_keycode/process_printer_bb.c4
-rw-r--r--quantum/process_keycode/process_unicode.c1
-rw-r--r--quantum/process_keycode/process_unicode_common.c1
-rw-r--r--quantum/visualizer/lcd_keyframes.c4
8 files changed, 30 insertions, 15 deletions
diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c
index 6cf4f031ff..9dafc8b516 100644
--- a/quantum/keymap_common.c
+++ b/quantum/keymap_common.c
@@ -179,5 +179,12 @@ uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key)
__attribute__ ((weak))
uint16_t keymap_function_id_to_action( uint16_t function_id )
{
+ // The compiler sees the empty (weak) fn_actions and generates a warning
+ // This function should not be called in that case, so the warning is too strict
+ // If this function is called however, the keymap should have overridden fn_actions, and then the compile
+ // is comparing against the wrong array
+ #pragma GCC diagnostic push
+ #pragma GCC diagnostic ignored "-Warray-bounds"
return pgm_read_word(&fn_actions[function_id]);
+ #pragma GCC diagnostic pop
}
diff --git a/quantum/keymap_extras/keymap_german_ch.h b/quantum/keymap_extras/keymap_german_ch.h
index 8332e00af3..67350d6602 100644
--- a/quantum/keymap_extras/keymap_german_ch.h
+++ b/quantum/keymap_extras/keymap_german_ch.h
@@ -33,6 +33,10 @@
#define CH_E KC_E
#define CH_F KC_F
#define CH_G KC_G
+#ifdef CH_H
+// The ChibiOS ch.h file defines this...
+#undef CH_H
+#endif
#define CH_H KC_H
#define CH_I KC_I
#define CH_J KC_J
diff --git a/quantum/process_keycode/process_printer.c b/quantum/process_keycode/process_printer.c
index 807f7a0b91..613af70183 100644
--- a/quantum/process_keycode/process_printer.c
+++ b/quantum/process_keycode/process_printer.c
@@ -20,12 +20,12 @@
bool printing_enabled = false;
uint8_t character_shift = 0;
-void enabled_printing() {
+void enable_printing(void) {
printing_enabled = true;
serial_init();
}
-void disable_printing() {
+void disable_printing(void) {
printing_enabled = false;
}
@@ -41,9 +41,14 @@ void print_char(char c) {
USB_Init();
}
-void print_box_string(uint8_t text[]) {
- uint8_t len = strlen(text);
- uint8_t out[len * 3 + 8];
+void print_string(char c[]) {
+ for(uint8_t i = 0; i < strlen(c); i++)
+ print_char(c[i]);
+}
+
+void print_box_string(const char text[]) {
+ size_t len = strlen(text);
+ char out[len * 3 + 8];
out[0] = 0xDA;
for (uint8_t i = 0; i < len; i++) {
out[i+1] = 0xC4;
@@ -69,14 +74,9 @@ void print_box_string(uint8_t text[]) {
print_string(out);
}
-void print_string(char c[]) {
- for(uint8_t i = 0; i < strlen(c); i++)
- print_char(c[i]);
-}
-
bool process_printer(uint16_t keycode, keyrecord_t *record) {
if (keycode == PRINT_ON) {
- enabled_printing();
+ enable_printing();
return false;
}
if (keycode == PRINT_OFF) {
diff --git a/quantum/process_keycode/process_printer.h b/quantum/process_keycode/process_printer.h
index aa494ac8a7..71d3a4b56a 100644
--- a/quantum/process_keycode/process_printer.h
+++ b/quantum/process_keycode/process_printer.h
@@ -21,4 +21,6 @@
#include "protocol/serial.h"
+bool process_printer(uint16_t keycode, keyrecord_t *record);
+
#endif
diff --git a/quantum/process_keycode/process_printer_bb.c b/quantum/process_keycode/process_printer_bb.c
index 55d3b552b2..3a00f169d8 100644
--- a/quantum/process_keycode/process_printer_bb.c
+++ b/quantum/process_keycode/process_printer_bb.c
@@ -46,7 +46,7 @@ void serial_output(void) {
}
-void enabled_printing() {
+void enable_printing() {
printing_enabled = true;
serial_output();
serial_high();
@@ -82,7 +82,7 @@ void print_string(char c[]) {
bool process_printer(uint16_t keycode, keyrecord_t *record) {
if (keycode == PRINT_ON) {
- enabled_printing();
+ enable_printing();
return false;
}
if (keycode == PRINT_OFF) {
diff --git a/quantum/process_keycode/process_unicode.c b/quantum/process_keycode/process_unicode.c
index 678a15234d..fd008eca12 100644
--- a/quantum/process_keycode/process_unicode.c
+++ b/quantum/process_keycode/process_unicode.c
@@ -15,6 +15,7 @@
*/
#include "process_unicode.h"
#include "action_util.h"
+#include "eeprom.h"
static uint8_t first_flag = 0;
diff --git a/quantum/process_keycode/process_unicode_common.c b/quantum/process_keycode/process_unicode_common.c
index 1dbdec3e71..84b5d673dd 100644
--- a/quantum/process_keycode/process_unicode_common.c
+++ b/quantum/process_keycode/process_unicode_common.c
@@ -15,6 +15,7 @@
*/
#include "process_unicode_common.h"
+#include "eeprom.h"
static uint8_t input_mode;
uint8_t mods;
diff --git a/quantum/visualizer/lcd_keyframes.c b/quantum/visualizer/lcd_keyframes.c
index df11861ddc..82e4184d2c 100644
--- a/quantum/visualizer/lcd_keyframes.c
+++ b/quantum/visualizer/lcd_keyframes.c
@@ -125,8 +125,8 @@ static void get_led_state_string(char* output, visualizer_state_t* state) {
pos += 5;
}
if (state->status.leds & (1u << USB_LED_KANA)) {
- memcpy(output + pos, "KANA ", 5);
- pos += 5;
+ memcpy(output + pos, "KANA", 4);
+ pos += 4;
}
output[pos] = 0;
}