mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-10-31 13:22:31 +01:00 
			
		
		
		
	 c9e3fa6f70
			
		
	
	
		c9e3fa6f70
		
			
		
	
	
	
	
		
			
			* Clean up includes for glcdfont headers * Remove pragma once, most of these are not headers * Missed these
		
			
				
	
	
		
			289 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			289 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #include <stdio.h>
 | |
| #include "progmem.h"
 | |
| 
 | |
| #define NUM_USB_HID_KEYCODES 255
 | |
| #define LEN_KEYCODE_STR 4
 | |
| 
 | |
| char keylog[22] = {"KC:       ID: "};
 | |
| 
 | |
| // Quick and dirty way to display USB HID keycodes used in QMK
 | |
| // USB HID keycodes from 0x0000 to 0x00FF are stored in a 4x256+1 length char
 | |
| const char code_to_name[] PROGMEM = {
 | |
|   "NO  " //0x00
 | |
|   "TRNS"
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "A   "
 | |
|   "B   "
 | |
|   "C   "
 | |
|   "D   "
 | |
|   "E   "
 | |
|   "F   "
 | |
|   "G   "
 | |
|   "H   "
 | |
|   "I   "
 | |
|   "J   "
 | |
|   "K   "
 | |
|   "L   "
 | |
|   "M   " //0x10
 | |
|   "N   "
 | |
|   "O   "
 | |
|   "P   "
 | |
|   "Q   "
 | |
|   "R   "
 | |
|   "S   "
 | |
|   "T   "
 | |
|   "U   "
 | |
|   "V   "
 | |
|   "W   "
 | |
|   "X   "
 | |
|   "Y   "
 | |
|   "Z   "
 | |
|   "1   "
 | |
|   "2   "
 | |
|   "3   "  //0x20
 | |
|   "4   "
 | |
|   "5   "
 | |
|   "6   "
 | |
|   "7   "
 | |
|   "8   "
 | |
|   "9   "
 | |
|   "0   "
 | |
|   "ENT "
 | |
|   "ESC "
 | |
|   "BSPC"
 | |
|   "TAB "
 | |
|   "SPC "
 | |
|   "MINS"
 | |
|   "EQL "
 | |
|   "LBRC"
 | |
|   "RBRC" //0x30
 | |
|   "BSLS"
 | |
|   "NUHS"
 | |
|   "SCLN"
 | |
|   "QUOT"
 | |
|   "GRV "
 | |
|   "COMM"
 | |
|   "DOT "
 | |
|   "SLSH"
 | |
|   "CAPS"
 | |
|   "F1  "
 | |
|   "F2  "
 | |
|   "F3  "
 | |
|   "F4  "
 | |
|   "F5  "
 | |
|   "F6  "
 | |
|   "F7  " //0x40
 | |
|   "F8  "
 | |
|   "F9  "
 | |
|   "F10 "
 | |
|   "F11 "
 | |
|   "F12 "
 | |
|   "PSCR"
 | |
|   "SLCK"
 | |
|   "PAUS"
 | |
|   "INS "
 | |
|   "HOME"
 | |
|   "PGUP"
 | |
|   "DEL "
 | |
|   "END "
 | |
|   "PGDN"
 | |
|   "RGHT"
 | |
|   "LEFT" //0x50
 | |
|   "DOWN"
 | |
|   "UP  "
 | |
|   "NLCK"
 | |
|   "PSLS"
 | |
|   "PAST"
 | |
|   "PMNS"
 | |
|   "PPLS"
 | |
|   "PENT"
 | |
|   "P1  "
 | |
|   "P2  "
 | |
|   "P3  "
 | |
|   "P4  "
 | |
|   "P5  "
 | |
|   "P6  "
 | |
|   "P7  "
 | |
|   "P8  " //0x60
 | |
|   "P9  "
 | |
|   "P0  "
 | |
|   "PDOT"
 | |
|   "NUBS"
 | |
|   "APP "
 | |
|   "POW "
 | |
|   "PEQL"
 | |
|   "F13 "
 | |
|   "F14 "
 | |
|   "F15 "
 | |
|   "F16 "
 | |
|   "F17 "
 | |
|   "F18 "
 | |
|   "F19 "
 | |
|   "F20 "
 | |
|   "F21 " //0x70
 | |
|   "F22 "
 | |
|   "F23 "
 | |
|   "F24 "
 | |
|   "EXEC"
 | |
|   "HELP"
 | |
|   "MENU"
 | |
|   "SLCT"
 | |
|   "STOP"
 | |
|   "AGIN"
 | |
|   "UNDO"
 | |
|   "CUT "
 | |
|   "COPY"
 | |
|   "PSTE"
 | |
|   "FIND"
 | |
|   "_MUT"
 | |
|   "_VUP" //0x80
 | |
|   "_VDN"
 | |
|   "LCAP"
 | |
|   "LNUM"
 | |
|   "LSCR"
 | |
|   "PCMM"
 | |
|   "PEQA"
 | |
|   "INT1"
 | |
|   "INT2"
 | |
|   "INT3"
 | |
|   "INT4"
 | |
|   "INT5"
 | |
|   "INT6"
 | |
|   "INT7"
 | |
|   "INT8"
 | |
|   "INT9"
 | |
|   "LAN1" //0x90
 | |
|   "LAN2"
 | |
|   "LAN3"
 | |
|   "LAN4"
 | |
|   "LAN5"
 | |
|   "LAN6"
 | |
|   "LAN7"
 | |
|   "LAN8"
 | |
|   "LAN9"
 | |
|   "ERAS"
 | |
|   "SYSR"
 | |
|   "CNCL"
 | |
|   "CLR "
 | |
|   "PRIR"
 | |
|   "RTRN"
 | |
|   "SEP "
 | |
|   "OUT " //0xA0
 | |
|   "OPER"
 | |
|   "CLRA"
 | |
|   "CSEL"
 | |
|   "ESEL"
 | |
|   "PWR " //0xA5
 | |
|   "SLEP"
 | |
|   "WAKE"
 | |
|   "MUTE"
 | |
|   "VOLU"
 | |
|   "VOLD"
 | |
|   "MNXT"
 | |
|   "MPRV"
 | |
|   "MSTP"
 | |
|   "MPLY"
 | |
|   "MSEL"
 | |
|   "EJCT" //0xB0
 | |
|   "MAIL"
 | |
|   "CALC"
 | |
|   "MYCM"
 | |
|   "WSCH"
 | |
|   "WHOM"
 | |
|   "WBAK"
 | |
|   "WFWD"
 | |
|   "WSTP"
 | |
|   "WREF"
 | |
|   "WFAV"
 | |
|   "MFFD"
 | |
|   "MRWD"
 | |
|   "BRIU"
 | |
|   "BRID"
 | |
|   "?   "
 | |
|   "FN0 " //0xC0
 | |
|   "FN1 "
 | |
|   "FN2 "
 | |
|   "FN3 "
 | |
|   "FN4 "
 | |
|   "FN5 "
 | |
|   "FN6 "
 | |
|   "FN7 "
 | |
|   "FN8 "
 | |
|   "FN9 "
 | |
|   "FN10"
 | |
|   "FN11"
 | |
|   "FN12"
 | |
|   "FN13"
 | |
|   "FN14"
 | |
|   "FN15"
 | |
|   "FN16" //0xD0
 | |
|   "FN17"
 | |
|   "FN18"
 | |
|   "FN19"
 | |
|   "FN20"
 | |
|   "FN21"
 | |
|   "FN22"
 | |
|   "FN23"
 | |
|   "FN24"
 | |
|   "FN25"
 | |
|   "FN26"
 | |
|   "FN27"
 | |
|   "FN28"
 | |
|   "FN29"
 | |
|   "FN30"
 | |
|   "FN31"
 | |
|   "LCTL" //0xE0
 | |
|   "LSFT"
 | |
|   "LALT"
 | |
|   "LGUI"
 | |
|   "RCTL"
 | |
|   "RSFT"
 | |
|   "RALT"
 | |
|   "RGUI"
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "?   "
 | |
|   "MS_U" //0xF0
 | |
|   "MS_D"
 | |
|   "MS_L"
 | |
|   "MS_R"
 | |
|   "BTN1"
 | |
|   "BTN2"
 | |
|   "BTN3"
 | |
|   "BTN4"
 | |
|   "BTN5"
 | |
|   "WH_U"
 | |
|   "WH_D"
 | |
|   "WH_L"
 | |
|   "WH_R"
 | |
|   "ACL0"
 | |
|   "ACL1"
 | |
|   "ACL2"
 | |
| };
 | |
| 
 | |
| void set_keylog(uint16_t keycode)
 | |
| {
 | |
|   char name[LEN_KEYCODE_STR+1] = "?   ";
 | |
| 
 | |
|   if (keycode <= NUM_USB_HID_KEYCODES) {
 | |
|     for (uint8_t k = 0; k < LEN_KEYCODE_STR; k++) {
 | |
|       name[k] =  pgm_read_byte_near(code_to_name + keycode * LEN_KEYCODE_STR + k);
 | |
|     }
 | |
|   } else if (keycode > NUM_USB_HID_KEYCODES) {
 | |
|     snprintf(name, sizeof(name), "QMK ");
 | |
|   }
 | |
| 
 | |
|   // update keylog
 | |
|   snprintf(keylog, sizeof(keylog), "KC: %s  ID: %d", name, keycode);
 | |
| }
 | |
| 
 | |
| const char *read_keylog(void) {
 | |
|   return keylog;
 | |
| }
 |