static void render_logo(void) { static const char PROGMEM sol_logo[] = { 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0}; oled_write_P(sol_logo, false); }
static void render_status(void) { // Render to mode icon static const char PROGMEM mode_logo[4][4] = { {0x95,0x96,0x0a,0}, {0xb5,0xb6,0x0a,0}, {0x97,0x98,0x0a,0}, {0xb7,0xb8,0x0a,0} }; if (keymap_config.swap_lalt_lgui != false) { oled_write_P(mode_logo[0], false); oled_write_P(mode_logo[1], false); } else { oled_write_P(mode_logo[2], false); oled_write_P(mode_logo[3], false); } // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below oled_write_P(PSTR("Layer: "), false); switch (layer_state) { case L_BASE: oled_write_P(PSTR("Default\n"), false); break; case L_FN: oled_write_P(PSTR("FN \n"), false); break; case L_ADJ: case L_ADJ_TRI: oled_write_P(PSTR("ADJ \n"), false); break; default: oled_write_P(PSTR("UNDEF \n"), false); } // Host Keyboard LED Status uint8_t led_usb_state = host_keyboard_leds(); oled_write_P(led_usb_state & (1<<USB_LED_NUM_LOCK) ? PSTR("NUMLOCK ") : PSTR(" "), false); oled_write_P(led_usb_state & (1<<USB_LED_CAPS_LOCK) ? PSTR("CAPS ") : PSTR(" "), false); oled_write_P(led_usb_state & (1<<USB_LED_SCROLL_LOCK) ? PSTR("SCLK ") : PSTR(" "), false); }
void render_status(void) { oled_write_P(PSTR("Layer"), false); switch (biton32(layer_state)) { case 0: oled_write_P(PSTR("Base "), false); break; case _RAISE: oled_write_P(PSTR("Raise"), false); break; case _LOWER: oled_write_P(PSTR("Lower"), false); break; case _ADJUST: oled_write_P(PSTR("Adjst"), false); break; default: oled_write_P(PSTR("Unkn "), false); break; } oled_write_P(PSTR("Lyout"), false); switch (biton32(default_layer_state)) { case _QWERTY: oled_write_P(PSTR("QWRTY"), false); break; case _COLEMAK: oled_write_P(PSTR("COLMK"), false); break; case _DVORAK: oled_write_P(PSTR("DVRAK"), false); break; case _WORKMAN: oled_write_P(PSTR("WRKMN"), false); break; case _NORMAN: oled_write_P(PSTR("NORMN"), false); break; case _MALTRON: oled_write_P(PSTR("MLTRN"), false); break; case _EUCALYN: oled_write_P(PSTR("ECLYN"), false); break; case _CARPLAX: oled_write_P(PSTR("CRPLX"), false); break; } uint8_t modifiers = get_mods(); uint8_t one_shot = get_oneshot_mods(); oled_write_P(PSTR("Mods:"), false); oled_write_P( (modifiers & MOD_MASK_SHIFT || one_shot & MOD_MASK_SHIFT) ? PSTR(" SFT ") : PSTR(" "), false); oled_write_P( (modifiers & MOD_MASK_CTRL || one_shot & MOD_MASK_CTRL ) ? PSTR(" CTL ") : PSTR(" "), false); oled_write_P( (modifiers & MOD_MASK_ALT || one_shot & MOD_MASK_ALT ) ? PSTR(" ALT ") : PSTR(" "), false); oled_write_P( (modifiers & MOD_MASK_GUI || one_shot & MOD_MASK_GUI ) ? PSTR(" GUI ") : PSTR(" "), false); oled_write_P(PSTR("BTMGK"), false); if (keymap_config.swap_lalt_lgui) { oled_write_P(PSTR(" Mac "), false); } else { oled_write_P(PSTR(" Win "), false); } uint8_t led_usb_state = host_keyboard_leds(); oled_write_P(PSTR("Lock:"), false); oled_write_P(led_usb_state & (1<<USB_LED_NUM_LOCK) ? PSTR(" NUM ") : PSTR(" "), false); oled_write_P(led_usb_state & (1<<USB_LED_CAPS_LOCK) ? PSTR(" CAPS") : PSTR(" "), false); oled_write_P(led_usb_state & (1<<USB_LED_SCROLL_LOCK) ? PSTR(" SCRL") : PSTR(" "), false); oled_write(keylog_str, false); }