[Keymap] Update to Drashna keymap and user code (based on develop) (#12936)
This commit is contained in:
parent
cc815c4d83
commit
f461adbd1d
34 changed files with 475 additions and 321 deletions
|
@ -15,7 +15,6 @@
|
|||
*/
|
||||
|
||||
#include "drashna.h"
|
||||
#include <stdio.h>
|
||||
|
||||
#ifndef KEYLOGGER_LENGTH
|
||||
// # ifdef OLED_DISPLAY_128X64
|
||||
|
@ -158,6 +157,19 @@ void render_keylock_status(uint8_t led_usb_state) {
|
|||
oled_advance_page(true);
|
||||
#endif
|
||||
}
|
||||
void render_matrix_scan_rate(void) {
|
||||
#ifdef DEBUG_MATRIX_SCAN_RATE
|
||||
char matrix_rate[5];
|
||||
uint16_t n = get_matrix_scan_rate();
|
||||
matrix_rate[4] = '\0';
|
||||
matrix_rate[3] = '0' + n % 10;
|
||||
matrix_rate[2] = ( n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
|
||||
matrix_rate[1] = n / 10 ? '0' + n / 10 : ' ';
|
||||
matrix_rate[0] = ' ';
|
||||
oled_write_P(PSTR("MS:"), false);
|
||||
oled_write(matrix_rate, false);
|
||||
#endif
|
||||
}
|
||||
|
||||
void render_mod_status(uint8_t modifiers) {
|
||||
static const char PROGMEM mod_status[5][3] = {{0xE8, 0xE9, 0}, {0xE4, 0xE5, 0}, {0xE6, 0xE7, 0}, {0xEA, 0xEB, 0}, {0xEC, 0xED, 0}};
|
||||
|
@ -169,11 +181,17 @@ void render_mod_status(uint8_t modifiers) {
|
|||
#endif
|
||||
oled_write_P(mod_status[2], (modifiers & MOD_MASK_ALT));
|
||||
oled_write_P(mod_status[1], (modifiers & MOD_MASK_CTRL));
|
||||
|
||||
render_matrix_scan_rate();
|
||||
#if defined(OLED_DISPLAY_128X64)
|
||||
oled_advance_page(true);
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef SWAP_HANDS_ENABLE
|
||||
extern bool swap_hands;
|
||||
#endif
|
||||
|
||||
void render_bootmagic_status(void) {
|
||||
/* Show Ctrl-Gui Swap options */
|
||||
static const char PROGMEM logo[][2][3] = {
|
||||
|
@ -209,7 +227,7 @@ void render_bootmagic_status(void) {
|
|||
oled_write_P(PSTR(" "), false);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_NKRO), keymap_config.nkro);
|
||||
oled_write_P(PSTR(" "), false);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_NOGUI), !keymap_config.no_gui);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_NOGUI), keymap_config.no_gui);
|
||||
#ifdef OLED_DISPLAY_128X64
|
||||
oled_advance_page(true);
|
||||
oled_write_P(PSTR("Magic"), false);
|
||||
|
@ -221,10 +239,11 @@ void render_bootmagic_status(void) {
|
|||
}
|
||||
#endif
|
||||
oled_write_P(PSTR(" "), false);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_GRV), keymap_config.swap_grave_esc);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_ONESHOT), !is_oneshot_enabled());
|
||||
#ifdef SWAP_HANDS_ENABLE
|
||||
oled_write_P(PSTR(" "), false);
|
||||
oled_write_P(PSTR(" "), false);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_CAPS), keymap_config.swap_control_capslock);
|
||||
oled_write_P(PSTR(OLED_RENDER_BOOTMAGIC_SWAP), swap_hands);
|
||||
#endif
|
||||
#ifdef OLED_DISPLAY_128X64
|
||||
oled_advance_page(true);
|
||||
#endif
|
||||
|
@ -282,12 +301,22 @@ __attribute__((weak)) void oled_driver_render_logo(void) {
|
|||
|
||||
void render_wpm(void) {
|
||||
#ifdef WPM_ENABLE
|
||||
uint8_t n = get_current_wpm();
|
||||
# ifdef OLED_DISPLAY_128X64
|
||||
char wpm_counter[4];
|
||||
wpm_counter[3] = '\0';
|
||||
wpm_counter[2] = '0' + n % 10;
|
||||
wpm_counter[1] = ( n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
|
||||
wpm_counter[0] = n / 10 ? '0' + n / 10 : ' ';
|
||||
# else
|
||||
char wpm_counter[6];
|
||||
# endif
|
||||
snprintf(wpm_counter, sizeof(wpm_counter), "%3u", get_current_wpm());
|
||||
wpm_counter[5] = '\0';
|
||||
wpm_counter[4] = '0' + n % 10;
|
||||
wpm_counter[3] = ( n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
|
||||
wpm_counter[2] = n / 10 ? '0' + n / 10 : ' ';
|
||||
wpm_counter[1] = ' ';
|
||||
wpm_counter[0] = ' ';
|
||||
# endif
|
||||
oled_write_P(PSTR(OLED_RENDER_WPM_COUNTER), false);
|
||||
oled_write(wpm_counter, false);
|
||||
#endif
|
||||
|
@ -299,7 +328,13 @@ extern uint16_t dpi_array[];
|
|||
|
||||
void render_pointing_dpi_status(void) {
|
||||
char dpi_status[6];
|
||||
snprintf(dpi_status, sizeof(dpi_status), "%5u", dpi_array[keyboard_config.dpi_config]);
|
||||
uint16_t n = dpi_array[keyboard_config.dpi_config];
|
||||
dpi_status[5] = '\0';
|
||||
dpi_status[4] = '0' + n % 10;
|
||||
dpi_status[3] = ( n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
|
||||
dpi_status[2] = ( n /= 10) % 10 ? '0' + (n) % 10 : (n / 10) % 10 ? '0' : ' ';
|
||||
dpi_status[1] = n / 10 ? '0' + n / 10 : ' ';
|
||||
dpi_status[0] = ' ';
|
||||
oled_write_P(PSTR(" DPI: "), false);
|
||||
oled_write(dpi_status, false);
|
||||
}
|
||||
|
@ -320,7 +355,11 @@ void render_status_secondary(void) {
|
|||
void render_status_main(void) {
|
||||
#if defined(OLED_DISPLAY_128X64)
|
||||
oled_driver_render_logo();
|
||||
# ifdef DEBUG_MATRIX_SCAN_RATE
|
||||
render_matrix_scan_rate();
|
||||
# else
|
||||
render_wpm();
|
||||
# endif
|
||||
# ifdef KEYBOARD_handwired_dactyl_manuform_5x6_right_trackball
|
||||
render_pointing_dpi_status();
|
||||
# endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue