|
|
|
|
@ -340,34 +340,6 @@ layer_state_t update_tri_layer_state(layer_state_t state, uint8_t layer1, uint8_
|
|
|
|
|
|
|
|
|
|
void update_tri_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3) { layer_state_set(update_tri_layer_state(layer_state, layer1, layer2, layer3)); }
|
|
|
|
|
|
|
|
|
|
void tap_random_base64(void) {
|
|
|
|
|
#if defined(__AVR_ATmega32U4__)
|
|
|
|
|
uint8_t key = (TCNT0 + TCNT1 + TCNT3 + TCNT4) % 64;
|
|
|
|
|
#else
|
|
|
|
|
uint8_t key = rand() % 64;
|
|
|
|
|
#endif
|
|
|
|
|
switch (key) {
|
|
|
|
|
case 0 ... 25:
|
|
|
|
|
send_char(key + 'A');
|
|
|
|
|
break;
|
|
|
|
|
case 26 ... 51:
|
|
|
|
|
send_char(key - 26 + 'a');
|
|
|
|
|
break;
|
|
|
|
|
case 52:
|
|
|
|
|
send_char('0');
|
|
|
|
|
break;
|
|
|
|
|
case 53 ... 61:
|
|
|
|
|
send_char(key - 53 + '1');
|
|
|
|
|
break;
|
|
|
|
|
case 62:
|
|
|
|
|
send_char('+');
|
|
|
|
|
break;
|
|
|
|
|
case 63:
|
|
|
|
|
send_char('/');
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void matrix_init_quantum() {
|
|
|
|
|
#ifdef BOOTMAGIC_LITE
|
|
|
|
|
bootmagic_lite();
|
|
|
|
|
@ -469,40 +441,6 @@ void matrix_scan_quantum() {
|
|
|
|
|
# include "hd44780.h"
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
// Functions for spitting out values
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
void send_dword(uint32_t number) {
|
|
|
|
|
uint16_t word = (number >> 16);
|
|
|
|
|
send_word(word);
|
|
|
|
|
send_word(number & 0xFFFFUL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void send_word(uint16_t number) {
|
|
|
|
|
uint8_t byte = number >> 8;
|
|
|
|
|
send_byte(byte);
|
|
|
|
|
send_byte(number & 0xFF);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void send_byte(uint8_t number) {
|
|
|
|
|
uint8_t nibble = number >> 4;
|
|
|
|
|
send_nibble(nibble);
|
|
|
|
|
send_nibble(number & 0xF);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void send_nibble(uint8_t number) { tap_code16(hex_to_keycode(number)); }
|
|
|
|
|
|
|
|
|
|
__attribute__((weak)) uint16_t hex_to_keycode(uint8_t hex) {
|
|
|
|
|
hex = hex & 0xF;
|
|
|
|
|
if (hex == 0x0) {
|
|
|
|
|
return KC_0;
|
|
|
|
|
} else if (hex < 0xA) {
|
|
|
|
|
return KC_1 + (hex - 0x1);
|
|
|
|
|
} else {
|
|
|
|
|
return KC_A + (hex - 0xA);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void api_send_unicode(uint32_t unicode) {
|
|
|
|
|
#ifdef API_ENABLE
|
|
|
|
|
uint8_t chunk[4];
|
|
|
|
|
|