commit
154e6599a1
@ -1,31 +1,33 @@
|
|||||||
# US ANSI Shifted Symbols
|
# US ANSI Shifted Symbols
|
||||||
|
|
||||||
These keycodes correspond to characters that are "shifted" on a standard US ANSI keyboards. They do not have dedicated keycodes but are instead typed by holding down shift and then sending a keycode.
|
These keycodes correspond to characters that are "shifted" on a standard US ANSI keyboard. They do not have keycodes of their own but are simply shortcuts for `LSFT(kc)`, and as such send a Left Shift with the unshifted keycode, not the symbol itself.
|
||||||
|
|
||||||
It's important to remember that all of these keycodes send a left shift - this may cause unintended actions if unaccounted for. The short code is preferred in most situations.
|
## Caveats
|
||||||
|
|
||||||
## US ANSI Shifted Keycodes
|
Unfortunately, these keycodes cannot be used in Mod-Taps or Layer-Taps, since any modifiers specified in the keycode are ignored.
|
||||||
|
|
||||||
|Key |Aliases |Description |
|
## Keycodes
|
||||||
|------------------------|------------------|-------------------|
|
|
||||||
|`KC_TILDE` |`KC_TILD` |`~` |
|
|Key |Aliases |Description |
|
||||||
|`KC_EXCLAIM` |`KC_EXLM` |`!` |
|
|------------------------|-------------------|-------------------|
|
||||||
|`KC_AT` | |`@` |
|
|`KC_TILDE` |`KC_TILD` |`~` |
|
||||||
|`KC_HASH` | |`#` |
|
|`KC_EXCLAIM` |`KC_EXLM` |`!` |
|
||||||
|`KC_DOLLAR` |`KC_DLR` |`$` |
|
|`KC_AT` | |`@` |
|
||||||
|`KC_PERCENT` |`KC_PERC` |`%` |
|
|`KC_HASH` | |`#` |
|
||||||
|`KC_CIRCUMFLEX` |`KC_CIRC` |`^` |
|
|`KC_DOLLAR` |`KC_DLR` |`$` |
|
||||||
|`KC_AMPERSAND` |`KC_AMPR` |`&` |
|
|`KC_PERCENT` |`KC_PERC` |`%` |
|
||||||
|`KC_ASTERISK` |`KC_ASTR` |`*` |
|
|`KC_CIRCUMFLEX` |`KC_CIRC` |`^` |
|
||||||
|`KC_LEFT_PAREN` |`KC_LPRN` |`(` |
|
|`KC_AMPERSAND` |`KC_AMPR` |`&` |
|
||||||
|`KC_RIGHT_PAREN` |`KC_RPRN` |`)` |
|
|`KC_ASTERISK` |`KC_ASTR` |`*` |
|
||||||
|`KC_UNDERSCORE` |`KC_UNDS` |`_` |
|
|`KC_LEFT_PAREN` |`KC_LPRN` |`(` |
|
||||||
|`KC_PLUS` | |`+` |
|
|`KC_RIGHT_PAREN` |`KC_RPRN` |`)` |
|
||||||
|`KC_LEFT_CURLY_BRACE` |`KC_LCBR` |`{` |
|
|`KC_UNDERSCORE` |`KC_UNDS` |`_` |
|
||||||
|`KC_RIGHT_CURLY_BRACE` |`KC_RCBR` |`}` |
|
|`KC_PLUS` | |`+` |
|
||||||
|`KC_PIPE` | |<code>|</code>|
|
|`KC_LEFT_CURLY_BRACE` |`KC_LCBR` |`{` |
|
||||||
|`KC_COLON` |`KC_COLN` |`:` |
|
|`KC_RIGHT_CURLY_BRACE` |`KC_RCBR` |`}` |
|
||||||
|`KC_DOUBLE_QUOTE` |`KC_DQT`/`KC_DQUO`|`"` |
|
|`KC_PIPE` | |<code>|</code>|
|
||||||
|`KC_LEFT_ANGLE_BRACKET` |`KC_LT`/`KC_LABK` |`<` |
|
|`KC_COLON` |`KC_COLN` |`:` |
|
||||||
|`KC_RIGHT_ANGLE_BRACKET`|`KC_GT`/`KC_RABK` |`>` |
|
|`KC_DOUBLE_QUOTE` |`KC_DQUO`, `KC_DQT`|`"` |
|
||||||
|`KC_QUESTION` |`KC_QUES` |`?` |
|
|`KC_LEFT_ANGLE_BRACKET` |`KC_LABK`, `KC_LT` |`<` |
|
||||||
|
|`KC_RIGHT_ANGLE_BRACKET`|`KC_RABK`, `KC_GT` |`>` |
|
||||||
|
|`KC_QUESTION` |`KC_QUES` |`?` |
|
||||||
|
@ -0,0 +1,17 @@
|
|||||||
|
# Catch 22 Budget Hotswap Macropad
|
||||||
|
|
||||||
|
GB by /u/rockydbull run in July 2018, PCB designed with help from /u/Kilgarah.
|
||||||
|
|
||||||
|
Designed to be a budget project board to enjoy hotswapping/switch testing/macro making fun. The board is controlled by a pro micro clone made famous by other projects like the lets split, iris, and nyquist and allows for full QMK implementation. Each Catch22 kit will contain:
|
||||||
|
|
||||||
|
* 2 pcbs (one to solder to and one to be a base)(green color)
|
||||||
|
* 1 pcb material switch plate( green color) with cut out for pcb mount cherry stabilizers
|
||||||
|
* 40 throughhole diodes (22 for the pcb and the remaining as extras in case you lose one and to use to make the pro micro removeable without desoldering)
|
||||||
|
* 22 Kailh hotswap sockets
|
||||||
|
* 1 smd reset button
|
||||||
|
* 1 dip socket to mount between the pcb and pro micro if you choose to make it removeable without desoldering
|
||||||
|
* 5 (12mm) m2 standoffs
|
||||||
|
* 10 m2 screws
|
||||||
|
* Genuine Cherry pcb mount 2u stabilizer
|
||||||
|
* 4 rubber bumpons
|
||||||
|
* Pro Micro is included in kit
|
@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2018 QMK Community
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "catch22.h"
|
@ -0,0 +1,33 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2018 QMK Community
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "quantum.h"
|
||||||
|
|
||||||
|
#define LAYOUT( \
|
||||||
|
K01, K02, K03, K04, \
|
||||||
|
K11, K12, K13, K14, \
|
||||||
|
K20, K21, K22, K23, K24, \
|
||||||
|
K30, K31, K32, K33, K34, \
|
||||||
|
K41, K42, K43, K44 \
|
||||||
|
) { \
|
||||||
|
{ KC_NO, K01, K02, K03, K04 }, \
|
||||||
|
{ KC_NO, K11, K12, K13, K14 }, \
|
||||||
|
{ K20, K21, K22, K23, K24 }, \
|
||||||
|
{ K30, K31, K32, K33, K34 }, \
|
||||||
|
{ KC_NO, K41, K42, K43, K44 }, \
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2018 QMK Contributors
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "config_common.h"
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0xFEED
|
||||||
|
#define PRODUCT_ID 0xCA22
|
||||||
|
#define DEVICE_VER 0x0001
|
||||||
|
#define MANUFACTURER rockydbull
|
||||||
|
#define PRODUCT Catch22 Hotswap Macropad
|
||||||
|
#define DESCRIPTION Budget 22 Key Hotswap Macropad
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 5
|
||||||
|
#define MATRIX_COLS 5
|
||||||
|
|
||||||
|
/* key matrix pins */
|
||||||
|
#define MATRIX_ROW_PINS { B6, B2, B3, B1, F7 }
|
||||||
|
#define MATRIX_COL_PINS { B5, B4, E6, D7, C6 }
|
||||||
|
#define UNUSED_PINS { }
|
||||||
|
|
||||||
|
/* COL2ROW or ROW2COL */
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
/* Set 0 if debouncing isn't needed */
|
||||||
|
#define DEBOUNCING_DELAY 50
|
||||||
|
|
||||||
|
/* key combination for command */
|
||||||
|
#define IS_COMMAND() ( \
|
||||||
|
false \
|
||||||
|
)
|
||||||
|
|
||||||
|
/* prevent stuck modifiers */
|
||||||
|
#define PREVENT_STUCK_MODIFIERS
|
||||||
|
|
||||||
|
#ifdef RGBLIGHT_ENABLE
|
||||||
|
#define RGB_DI_PIN F6
|
||||||
|
#define RGBLIGHT_ANIMATIONS
|
||||||
|
#define RGBLED_NUM 6
|
||||||
|
#endif
|
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"keyboard_name": "catch22",
|
||||||
|
"width": 5,
|
||||||
|
"height": 5,
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT": {
|
||||||
|
"layout": [{"label":"A", "x":1, "y":0}, {"label":"B", "x":2, "y":0}, {"label":"C", "x":3, "y":0}, {"label":"D", "x":4, "y":0}, {"label":"E", "x":1, "y":1}, {"label":"F", "x":2, "y":1}, {"label":"G", "x":3, "y":1}, {"label":"H", "x":4, "y":1}, {"label":"I", "x":0, "y":2}, {"label":"J", "x":1, "y":2}, {"label":"K", "x":2, "y":2}, {"label":"L", "x":3, "y":2}, {"label":"M", "x":4, "y":2}, {"label":"1", "x":0, "y":3, "h":2}, {"label":"N", "x":1, "y":3}, {"label":"O", "x":2, "y":3}, {"label":"P", "x":3, "y":3}, {"label":"Q", "x":4, "y":3}, {"label":"R", "x":1, "y":4}, {"label":"S", "x":2, "y":4}, {"label":"T", "x":3, "y":4}, {"label":"U", "x":4, "y":4}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
#define _BASE 0
|
||||||
|
#define _FN 1
|
||||||
|
|
||||||
|
#define _______ KC_TRNS
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
[_BASE] = LAYOUT( /* Base */
|
||||||
|
KC_A, KC_B, KC_C, KC_D, \
|
||||||
|
KC_E, KC_F, KC_G, KC_H, \
|
||||||
|
MO(_FN), KC_I, KC_J, KC_K, KC_L, \
|
||||||
|
KC_1, KC_M, KC_N, KC_O, KC_P, \
|
||||||
|
KC_Q, KC_R, KC_S, KC_T \
|
||||||
|
),
|
||||||
|
[_FN] = LAYOUT(
|
||||||
|
RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUI, \
|
||||||
|
_______, _______, _______, _______, \
|
||||||
|
_______, _______, _______, _______, _______, \
|
||||||
|
KC_2, _______, _______, _______, _______, \
|
||||||
|
_______, _______, _______, _______ \
|
||||||
|
),
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint16_t PROGMEM fn_actions[] = {
|
||||||
|
};
|
||||||
|
|
||||||
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) // MACRODOWN only works in this function
|
||||||
|
{
|
||||||
|
return MACRO_NONE;
|
||||||
|
};
|
@ -0,0 +1,60 @@
|
|||||||
|
# MCU name
|
||||||
|
MCU = atmega32u4
|
||||||
|
|
||||||
|
# Processor frequency.
|
||||||
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||||
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||||
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||||
|
# automatically to create a 32-bit value in your source code.
|
||||||
|
#
|
||||||
|
# This will be an integer division of F_USB below, as it is sourced by
|
||||||
|
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||||
|
# does not *change* the processor frequency - it should merely be updated to
|
||||||
|
# reflect the processor speed set externally so that the code can use accurate
|
||||||
|
# software delays.
|
||||||
|
F_CPU = 16000000
|
||||||
|
|
||||||
|
#
|
||||||
|
# LUFA specific
|
||||||
|
#
|
||||||
|
# Target architecture (see library "Board Types" documentation).
|
||||||
|
ARCH = AVR8
|
||||||
|
|
||||||
|
# Input clock frequency.
|
||||||
|
# This will define a symbol, F_USB, in all source code files equal to the
|
||||||
|
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||||
|
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||||
|
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||||
|
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||||
|
# at the end, this will be done automatically to create a 32-bit value in your
|
||||||
|
# source code.
|
||||||
|
#
|
||||||
|
# If no clock division is performed on the input clock inside the AVR (via the
|
||||||
|
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||||
|
F_USB = $(F_CPU)
|
||||||
|
|
||||||
|
# Bootloader
|
||||||
|
BOOTLOADER = caterina
|
||||||
|
|
||||||
|
# Interrupt driven control endpoint task(+60)
|
||||||
|
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||||
|
|
||||||
|
|
||||||
|
# Boot Section Size in *bytes*
|
||||||
|
#OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||||
|
|
||||||
|
|
||||||
|
# Build Options
|
||||||
|
# comment out to disable the options.
|
||||||
|
#
|
||||||
|
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||||
|
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
|
||||||
|
EXTRAKEY_ENABLE = no # Audio control and System control(+450)
|
||||||
|
CONSOLE_ENABLE = yes # Console for debug(+400)
|
||||||
|
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||||
|
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||||
|
NKRO_ENABLE = no # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
|
BACKLIGHT_ENABLE = no # Custom backlighting code is used, so this should not be enabled
|
||||||
|
AUDIO_ENABLE = no # This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
|
||||||
|
RGBLIGHT_ENABLE = yes # This can be enabled if a ws2812 strip is connected to the expansion port.
|
||||||
|
|
@ -0,0 +1,92 @@
|
|||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
|
||||||
|
|
||||||
|
#define ______ KC_TRNS
|
||||||
|
|
||||||
|
#define LAYER_1 1
|
||||||
|
#define LAYER_2 2
|
||||||
|
#define LAYER_3 3
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
|
/* Base Layer
|
||||||
|
* ,-----------------------------------------------------------------------------------------.
|
||||||
|
* | ` ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bkspc |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | LAY1 | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | Shift | Z | X | C | V | B | N | M | , | . | / | RSh | U | LAY2|
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | Ctrl | Cmd | Alt | LAY1 | LAY2 | SPACE | RAlt | LAY1 | L | D | R |
|
||||||
|
* `-----------------------------------------------------------------------------------------'
|
||||||
|
*/
|
||||||
|
|
||||||
|
LAYOUT_2_shifts(
|
||||||
|
KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, ______, KC_BSPC,
|
||||||
|
|
||||||
|
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||||
|
|
||||||
|
MO(LAYER_1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||||
|
|
||||||
|
KC_LSFT, ______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, MO(LAYER_2),
|
||||||
|
|
||||||
|
KC_LCTL, KC_LGUI, KC_LALT, MO(LAYER_1), MO(LAYER_1), KC_SPC, KC_RALT, MO(LAYER_1), KC_LEFT, KC_DOWN, KC_RIGHT
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Layer 1
|
||||||
|
* ,-----------------------------------------------------------------------------------------.
|
||||||
|
* | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DEL |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | | PREV | PLAY | NEXT | | | | | Up | | | | | |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | | | | | | | | Home| Left | Down | Right | End | | |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | | | | | | | | | | | | |VOL+| |
|
||||||
|
* |-----------------------------------------------------------------------------------------+s
|
||||||
|
* | | | | | | | |VOL-| MUTE |
|
||||||
|
* `-----------------------------------------------------------------------------------------'
|
||||||
|
KC_VOLD, KC_VOLU, KC_MUTE,
|
||||||
|
KC_MPRV, KC_MPLY, KC_MNXT,
|
||||||
|
*/
|
||||||
|
|
||||||
|
LAYOUT_2_shifts(
|
||||||
|
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ______, KC_DEL,
|
||||||
|
|
||||||
|
______, KC_MPRV, KC_MPLY, KC_MNXT, ______, ______, ______, ______, KC_UP, ______, ______, ______, ______, ______,
|
||||||
|
|
||||||
|
______, ______, ______, ______, ______, ______, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, ______, ______,
|
||||||
|
|
||||||
|
______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_VOLU, ______,
|
||||||
|
|
||||||
|
______, ______, ______, ______, ______, ______, ______, ______, ______, KC_VOLD, KC_MUTE
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Layer 2
|
||||||
|
* ,-----------------------------------------------------------------------------------------.
|
||||||
|
* | RESET | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | RESET |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | |RBB T|RGB M| Hue+| Hue-| Sat+| Sat-| Val+| Val-| | | | | |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | | BL T| BL M| BL+ | BL- | | | | | | | | |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | | | | | | | | | | | | | | |
|
||||||
|
* |-----------------------------------------------------------------------------------------+
|
||||||
|
* | | | | | | | | | |
|
||||||
|
* `-----------------------------------------------------------------------------------------'
|
||||||
|
*/
|
||||||
|
|
||||||
|
LAYOUT_2_shifts(
|
||||||
|
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, ______, RESET,
|
||||||
|
|
||||||
|
______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, ______, ______, ______, ______, ______,
|
||||||
|
|
||||||
|
______, BL_TOGG, BL_STEP, BL_INC, BL_DEC, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||||
|
|
||||||
|
______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______,
|
||||||
|
|
||||||
|
______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______
|
||||||
|
),
|
||||||
|
};
|
@ -0,0 +1,6 @@
|
|||||||
|

|
||||||
|
|
||||||
|
# Frogger's Keyboard Layout
|
||||||
|
|
||||||
|
This layouts is for someone with a dedicated arrow keys, but still wants arrows on home row as well. I have one layer which is functionality, and another layer
|
||||||
|
which is really more around backlight stuff, because I rarely use it. Instead of a 2.25u shift as pictured, I have 2 1u keys.
|
@ -0,0 +1,2 @@
|
|||||||
|
BACKLIGHT_ENABLE = no
|
||||||
|
RGBLIGHT_ENABLE = no
|
@ -0,0 +1,225 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2018 MechMerlin
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "config_common.h"
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
#define VENDOR_ID 0xFEED
|
||||||
|
#define PRODUCT_ID 0x0000
|
||||||
|
#define DEVICE_VER 0x0001
|
||||||
|
#define MANUFACTURER You
|
||||||
|
#define PRODUCT kbd6x
|
||||||
|
#define DESCRIPTION A custom keyboard
|
||||||
|
|
||||||
|
/* key matrix size */
|
||||||
|
#define MATRIX_ROWS 5
|
||||||
|
#define MATRIX_COLS 14
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Keyboard Matrix Assignments
|
||||||
|
*
|
||||||
|
* Change this to how you wired your keyboard
|
||||||
|
* COLS: AVR pins used for columns, left to right
|
||||||
|
* ROWS: AVR pins used for rows, top to bottom
|
||||||
|
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
||||||
|
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#define MATRIX_ROW_PINS { B3, B2, B1, B0, D4 }
|
||||||
|
#define MATRIX_COL_PINS { F6, F5, F4, F1, E6, D0, D1, D2, D3, D5, D6, D7, B4, B5 }
|
||||||
|
#define UNUSED_PINS
|
||||||
|
|
||||||
|
/* COL2ROW, ROW2COL, or CUSTOM_MATRIX */
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
#define BACKLIGHT_PIN B7
|
||||||
|
#define BACKLIGHT_BREATHING
|
||||||
|
#define BACKLIGHT_LEVELS 3
|
||||||
|
|
||||||
|
#define RGB_DI_PIN F0
|
||||||
|
#ifdef RGB_DI_PIN
|
||||||
|
#define RGBLIGHT_ANIMATIONS
|
||||||
|
#define RGBLED_NUM 14
|
||||||
|
#define RGBLIGHT_HUE_STEP 12
|
||||||
|
#define RGBLIGHT_SAT_STEP 12
|
||||||
|
#define RGBLIGHT_VAL_STEP 12
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||||
|
#define DEBOUNCING_DELAY 5
|
||||||
|
|
||||||
|
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
||||||
|
//#define MATRIX_HAS_GHOST
|
||||||
|
|
||||||
|
/* number of backlight levels */
|
||||||
|
|
||||||
|
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||||
|
#define LOCKING_SUPPORT_ENABLE
|
||||||
|
/* Locking resynchronize hack */
|
||||||
|
#define LOCKING_RESYNC_ENABLE
|
||||||
|
|
||||||
|
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
||||||
|
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||||
|
*/
|
||||||
|
// #define GRAVE_ESC_CTRL_OVERRIDE
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Force NKRO
|
||||||
|
*
|
||||||
|
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
||||||
|
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
||||||
|
* makefile for this to work.)
|
||||||
|
*
|
||||||
|
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
||||||
|
* until the next keyboard reset.
|
||||||
|
*
|
||||||
|
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
||||||
|
* fully operational during normal computer usage.
|
||||||
|
*
|
||||||
|
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
||||||
|
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
||||||
|
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
||||||
|
* power-up.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
//#define FORCE_NKRO
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Magic Key Options
|
||||||
|
*
|
||||||
|
* Magic keys are hotkey commands that allow control over firmware functions of
|
||||||
|
* the keyboard. They are best used in combination with the HID Listen program,
|
||||||
|
* found here: https://www.pjrc.com/teensy/hid_listen.html
|
||||||
|
*
|
||||||
|
* The options below allow the magic key functionality to be changed. This is
|
||||||
|
* useful if your keyboard/keypad is missing keys and you want magic key support.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* key combination for magic key command */
|
||||||
|
#define IS_COMMAND() ( \
|
||||||
|
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
|
||||||
|
)
|
||||||
|
|
||||||
|
/* control how magic key switches layers */
|
||||||
|
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
|
||||||
|
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
|
||||||
|
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
|
||||||
|
|
||||||
|
/* override magic key keymap */
|
||||||
|
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
|
||||||
|
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
|
||||||
|
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
|
||||||
|
//#define MAGIC_KEY_HELP1 H
|
||||||
|
//#define MAGIC_KEY_HELP2 SLASH
|
||||||
|
//#define MAGIC_KEY_DEBUG D
|
||||||
|
//#define MAGIC_KEY_DEBUG_MATRIX X
|
||||||
|
//#define MAGIC_KEY_DEBUG_KBD K
|
||||||
|
//#define MAGIC_KEY_DEBUG_MOUSE M
|
||||||
|
//#define MAGIC_KEY_VERSION V
|
||||||
|
//#define MAGIC_KEY_STATUS S
|
||||||
|
//#define MAGIC_KEY_CONSOLE C
|
||||||
|
//#define MAGIC_KEY_LAYER0_ALT1 ESC
|
||||||
|
//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
|
||||||
|
//#define MAGIC_KEY_LAYER0 0
|
||||||
|
//#define MAGIC_KEY_LAYER1 1
|
||||||
|
//#define MAGIC_KEY_LAYER2 2
|
||||||
|
//#define MAGIC_KEY_LAYER3 3
|
||||||
|
//#define MAGIC_KEY_LAYER4 4
|
||||||
|
//#define MAGIC_KEY_LAYER5 5
|
||||||
|
//#define MAGIC_KEY_LAYER6 6
|
||||||
|
//#define MAGIC_KEY_LAYER7 7
|
||||||
|
//#define MAGIC_KEY_LAYER8 8
|
||||||
|
//#define MAGIC_KEY_LAYER9 9
|
||||||
|
//#define MAGIC_KEY_BOOTLOADER PAUSE
|
||||||
|
//#define MAGIC_KEY_LOCK CAPS
|
||||||
|
//#define MAGIC_KEY_EEPROM E
|
||||||
|
//#define MAGIC_KEY_NKRO N
|
||||||
|
//#define MAGIC_KEY_SLEEP_LED Z
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Feature disable options
|
||||||
|
* These options are also useful to firmware size reduction.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* disable debug print */
|
||||||
|
//#define NO_DEBUG
|
||||||
|
|
||||||
|
/* disable print */
|
||||||
|
//#define NO_PRINT
|
||||||
|
|
||||||
|
/* disable action features */
|
||||||
|
//#define NO_ACTION_LAYER
|
||||||
|
//#define NO_ACTION_TAPPING
|
||||||
|
//#define NO_ACTION_ONESHOT
|
||||||
|
//#define NO_ACTION_MACRO
|
||||||
|
//#define NO_ACTION_FUNCTION
|
||||||
|
|
||||||
|
/*
|
||||||
|
* MIDI options
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Prevent use of disabled MIDI features in the keymap */
|
||||||
|
//#define MIDI_ENABLE_STRICT 1
|
||||||
|
|
||||||
|
/* enable basic MIDI features:
|
||||||
|
- MIDI notes can be sent when in Music mode is on
|
||||||
|
*/
|
||||||
|
//#define MIDI_BASIC
|
||||||
|
|
||||||
|
/* enable advanced MIDI features:
|
||||||
|
- MIDI notes can be added to the keymap
|
||||||
|
- Octave shift and transpose
|
||||||
|
- Virtual sustain, portamento, and modulation wheel
|
||||||
|
- etc.
|
||||||
|
*/
|
||||||
|
//#define MIDI_ADVANCED
|
||||||
|
|
||||||
|
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
|
||||||
|
//#define MIDI_TONE_KEYCODE_OCTAVES 1
|
||||||
|
|
||||||
|
/*
|
||||||
|
* HD44780 LCD Display Configuration
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
#define LCD_LINES 2 //< number of visible lines of the display
|
||||||
|
#define LCD_DISP_LENGTH 16 //< visibles characters per line of the display
|
||||||
|
|
||||||
|
#define LCD_IO_MODE 1 //< 0: memory mapped mode, 1: IO port mode
|
||||||
|
|
||||||
|
#if LCD_IO_MODE
|
||||||
|
#define LCD_PORT PORTB //< port for the LCD lines
|
||||||
|
#define LCD_DATA0_PORT LCD_PORT //< port for 4bit data bit 0
|
||||||
|
#define LCD_DATA1_PORT LCD_PORT //< port for 4bit data bit 1
|
||||||
|
#define LCD_DATA2_PORT LCD_PORT //< port for 4bit data bit 2
|
||||||
|
#define LCD_DATA3_PORT LCD_PORT //< port for 4bit data bit 3
|
||||||
|
#define LCD_DATA0_PIN 4 //< pin for 4bit data bit 0
|
||||||
|
#define LCD_DATA1_PIN 5 //< pin for 4bit data bit 1
|
||||||
|
#define LCD_DATA2_PIN 6 //< pin for 4bit data bit 2
|
||||||
|
#define LCD_DATA3_PIN 7 //< pin for 4bit data bit 3
|
||||||
|
#define LCD_RS_PORT LCD_PORT //< port for RS line
|
||||||
|
#define LCD_RS_PIN 3 //< pin for RS line
|
||||||
|
#define LCD_RW_PORT LCD_PORT //< port for RW line
|
||||||
|
#define LCD_RW_PIN 2 //< pin for RW line
|
||||||
|
#define LCD_E_PORT LCD_PORT //< port for Enable line
|
||||||
|
#define LCD_E_PIN 1 //< pin for Enable line
|
||||||
|
#endif
|
||||||
|
*/
|
||||||
|
|
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"keyboard_name": "kbd6x",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "qmk",
|
||||||
|
"width": 15,
|
||||||
|
"height": 5,
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT": {
|
||||||
|
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Alt", "x":11, "y":4, "w":1.5}, {"label":"Win", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,49 @@
|
|||||||
|
/* Copyright 2018 MechMerlin
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#include "kbd6x.h"
|
||||||
|
|
||||||
|
void matrix_init_kb(void) {
|
||||||
|
// put your keyboard start-up code here
|
||||||
|
// runs once when the firmware starts up
|
||||||
|
|
||||||
|
matrix_init_user();
|
||||||
|
}
|
||||||
|
|
||||||
|
void matrix_scan_kb(void) {
|
||||||
|
// put your looping keyboard code here
|
||||||
|
// runs every cycle (a lot)
|
||||||
|
|
||||||
|
matrix_scan_user();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
// put your per-action keyboard code here
|
||||||
|
// runs for every action, just before processing by the firmware
|
||||||
|
|
||||||
|
return process_record_user(keycode, record);
|
||||||
|
}
|
||||||
|
|
||||||
|
void led_set_kb(uint8_t usb_led) {
|
||||||
|
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||||
|
DDRB |= (1 << 6);
|
||||||
|
PORTB &= ~(1 << 6);
|
||||||
|
} else {
|
||||||
|
DDRB &= ~(1 << 6);
|
||||||
|
PORTB &= ~(1 << 6);
|
||||||
|
}
|
||||||
|
|
||||||
|
led_set_user(usb_led);
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
/* Copyright 2018 MechMerlin
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#ifndef KBD6X_H
|
||||||
|
#define KBD6X_H
|
||||||
|
|
||||||
|
#include "quantum.h"
|
||||||
|
|
||||||
|
#define LAYOUT( \
|
||||||
|
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K4D,\
|
||||||
|
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
|
||||||
|
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
|
||||||
|
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||||
|
K40, K41, K42, K46, K4A, K4B, K4C \
|
||||||
|
) \
|
||||||
|
{ \
|
||||||
|
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
|
||||||
|
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \
|
||||||
|
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KC_NO }, \
|
||||||
|
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KC_NO }, \
|
||||||
|
{ K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D }, \
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -0,0 +1,67 @@
|
|||||||
|
/* Copyright 2018 MechMerlin
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
[0] = LAYOUT(
|
||||||
|
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_DEL,
|
||||||
|
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||||
|
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||||
|
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
||||||
|
KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_RGUI, KC_RCTL
|
||||||
|
),
|
||||||
|
|
||||||
|
[1] = LAYOUT(
|
||||||
|
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||||
|
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||||
|
),
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint16_t PROGMEM fn_actions[] = {
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
||||||
|
{
|
||||||
|
// MACRODOWN only works in this function
|
||||||
|
switch(id) {
|
||||||
|
case 0:
|
||||||
|
if (record->event.pressed) {
|
||||||
|
register_code(KC_RSFT);
|
||||||
|
} else {
|
||||||
|
unregister_code(KC_RSFT);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return MACRO_NONE;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
void matrix_init_user(void) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void matrix_scan_user(void) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
# The default keymap for kbd6x
|
@ -0,0 +1,12 @@
|
|||||||
|
# KBD6x
|
||||||
|
|
||||||
|
A WKL Hot Swap Double USB C 60%
|
||||||
|
|
||||||
|
Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
|
||||||
|
Hardware Supported: KBD6x PCB
|
||||||
|
Hardware Availability: [KBDFans](https://kbdfans.cn/products/kbd6x-wkl-hot-swap-60-double-type-c-pcb)
|
||||||
|
Make example for this keyboard (after setting up your build environment):
|
||||||
|
|
||||||
|
make kbd6x:default
|
||||||
|
|
||||||
|
See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information.
|
@ -0,0 +1,70 @@
|
|||||||
|
# MCU name
|
||||||
|
#MCU = at90usb1286
|
||||||
|
MCU = atmega32u4
|
||||||
|
|
||||||
|
# Processor frequency.
|
||||||
|
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||||
|
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||||
|
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||||
|
# automatically to create a 32-bit value in your source code.
|
||||||
|
#
|
||||||
|
# This will be an integer division of F_USB below, as it is sourced by
|
||||||
|
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||||
|
# does not *change* the processor frequency - it should merely be updated to
|
||||||
|
# reflect the processor speed set externally so that the code can use accurate
|
||||||
|
# software delays.
|
||||||
|
F_CPU = 16000000
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# LUFA specific
|
||||||
|
#
|
||||||
|
# Target architecture (see library "Board Types" documentation).
|
||||||
|
ARCH = AVR8
|
||||||
|
|
||||||
|
# Input clock frequency.
|
||||||
|
# This will define a symbol, F_USB, in all source code files equal to the
|
||||||
|
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||||
|
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||||
|
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||||
|
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||||
|
# at the end, this will be done automatically to create a 32-bit value in your
|
||||||
|
# source code.
|
||||||
|
#
|
||||||
|
# If no clock division is performed on the input clock inside the AVR (via the
|
||||||
|
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||||
|
F_USB = $(F_CPU)
|
||||||
|
|
||||||
|
# Interrupt driven control endpoint task(+60)
|
||||||
|
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||||
|
|
||||||
|
|
||||||
|
# Boot Section Size in *bytes*
|
||||||
|
# Teensy halfKay 512
|
||||||
|
# Teensy++ halfKay 1024
|
||||||
|
# Atmel DFU loader 4096
|
||||||
|
# LUFA bootloader 4096
|
||||||
|
# USBaspLoader 2048
|
||||||
|
OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||||
|
|
||||||
|
|
||||||
|
# Build Options
|
||||||
|
# change yes to no to disable
|
||||||
|
#
|
||||||
|
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||||
|
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||||
|
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||||
|
CONSOLE_ENABLE = yes # Console for debug(+400)
|
||||||
|
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||||
|
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||||
|
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||||
|
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||||
|
NKRO_ENABLE = no # USB Nkey Rollover
|
||||||
|
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default
|
||||||
|
MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
|
||||||
|
UNICODE_ENABLE = no # Unicode
|
||||||
|
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||||
|
RGBLIGHT_ENABLE = yes
|
||||||
|
AUDIO_ENABLE = no # Audio output on port C6
|
||||||
|
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
||||||
|
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
|
@ -0,0 +1,27 @@
|
|||||||
|
/* Copyright 2017 Benjamin Kesselring
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
// place overrides here
|
||||||
|
#define TAPPING_TOGGLE 2
|
||||||
|
|
||||||
|
#define MOUSEKEY_DELAY 0
|
||||||
|
#define MOUSEKEY_MAX_SPEED 4
|
||||||
|
#define MOUSEKEY_TIME_TO_MAX 5
|
||||||
|
|
||||||
|
#define MOUSEKEY_WHEEL_MAX_SPEED 1
|
||||||
|
#define MOUSEKEY_WHEEL_TIME_TO_MAX 50
|
@ -0,0 +1,114 @@
|
|||||||
|
/* Copyright 2017 Wunder
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
// Layer shorthand
|
||||||
|
#define _QW 0
|
||||||
|
#define _FN 1
|
||||||
|
|
||||||
|
enum my_kc {
|
||||||
|
A_BL_TG = SAFE_RANGE
|
||||||
|
// , A_BL_Y
|
||||||
|
// , A_BL_N
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
|
/* QWERTY
|
||||||
|
* .--------------------------------------------------------------------------------------------------------------------------------------.
|
||||||
|
* | ESC | 1 | 2 | 3 | 4 | 5 | - | ` | = | 6 | 7 | 8 | 9 | 0 | BSPC |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
||||||
|
* | TAB | Q | W | E | R | T | [ | ] | \ | Y | U | I | O | P | ' |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
|
||||||
|
* | CAP LK | A | S | D | F | G | UP | DEL | DOWN | H | J | K | L | ; | ENTER |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
|
||||||
|
* | LSHIFT | Z | X | C | V | B | HOME | PG UP | END | N | M | , | . | / | RSHIFT |
|
||||||
|
* |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
|
||||||
|
* | LCTRL | FN | LGUI | LALT | SPACE | SPACE | FN | PG DN | FN | BSPC | BSPC | RALT | RGUI | FN | RCTRL |
|
||||||
|
* '--------------------------------------------------------------------------------------------------------------------------------------'
|
||||||
|
*/
|
||||||
|
|
||||||
|
[_QW] = { /* QWERTY */
|
||||||
|
{ KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_MINS, KC_GRV , KC_EQL , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_BSPC },
|
||||||
|
{ KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_LBRC, KC_RBRC, KC_BSLS, KC_Y , KC_U , KC_I , KC_O , KC_P , KC_QUOT },
|
||||||
|
{ KC_CAPS, KC_A , KC_S , KC_D , KC_F , KC_G , KC_UP , KC_DEL , KC_DOWN, KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_ENT },
|
||||||
|
{ KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_HOME, KC_PGUP, KC_END , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT },
|
||||||
|
{ KC_LCTL, TT(_FN), KC_LGUI, KC_LALT, KC_SPC , KC_SPC , TT(_FN), KC_PGDN, TT(_FN), KC_BSPC, KC_BSPC, KC_RALT, KC_RGUI, TT(_FN), KC_RCTL },
|
||||||
|
},
|
||||||
|
|
||||||
|
/* FUNCTION
|
||||||
|
* .--------------------------------------------------------------------------------------------------------------------------------------.
|
||||||
|
* | F1 | F2 | F3 | F4 | F5 | F6 | | | | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
* | MS W U | | MS 2 | MS UP | MS 1 | MS 3 | RGB HD | | RGB HI | [ | ] | UP | | = | \ |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
* | MS W D | | MS L | MS DN | MS R | | RGB SD | | RGB SI | - | LEFT | DOWN | RIGHT | | |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
* | | | | | | | RGB VD | BL TG | RGB VI | | | | | | |
|
||||||
|
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
* | | FN | RGB TG | | MS W L | MS W R | | RESET | | MS 1 | MS 2 | RGB RMD| RGB MD | FN | |
|
||||||
|
* '--------------------------------------------------------------------------------------------------------------------------------------'
|
||||||
|
*/
|
||||||
|
|
||||||
|
[_FN] = { /* FUNCTION */
|
||||||
|
{ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, RGB_HUD, _______, RGB_HUI, KC_F7, KC_F8, KC_F9, KC_F10 , KC_F11 , KC_F12 },
|
||||||
|
{ KC_WH_U, _______, KC_BTN2, KC_MS_U, KC_BTN1, KC_BTN3, RGB_SAD, _______, RGB_SAI, KC_LBRC, KC_RBRC, KC_UP , _______ , KC_EQL , KC_BSLS },
|
||||||
|
{ KC_WH_D, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, RGB_VAD, _______, RGB_VAI, KC_MINS, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______ },
|
||||||
|
{ _______, _______, _______, _______, _______, _______, RGB_RMOD,A_BL_TG, RGB_MOD, _______, _______, _______, _______ , _______, _______ },
|
||||||
|
{ _______, TT(_FN), RGB_TOG, _______, KC_WH_L, KC_WH_R, TT(_FN), RESET , TT(_FN), KC_BTN1, KC_BTN2, _______, _______ , TT(_FN), _______ },
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
switch (keycode) {
|
||||||
|
case A_BL_TG:
|
||||||
|
if (record->event.pressed) {
|
||||||
|
// toggle keycaps leds (f5 pin)
|
||||||
|
PORTF ^= (1 << 5);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
|
||||||
|
// case A_BL_Y:
|
||||||
|
// if (record->event.pressed) {
|
||||||
|
// keycaps_led_on();
|
||||||
|
// }
|
||||||
|
// return false;
|
||||||
|
|
||||||
|
// case A_BL_N:
|
||||||
|
// if (record->event.pressed) {
|
||||||
|
// keycaps_led_off();
|
||||||
|
// }
|
||||||
|
// return false;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Runs whenever there is a layer state change.
|
||||||
|
uint32_t layer_state_set_user(uint32_t state) {
|
||||||
|
uint8_t layer = biton32(state);
|
||||||
|
|
||||||
|
gp100_led_off();
|
||||||
|
gp103_led_off();
|
||||||
|
|
||||||
|
// turns on gp100 (top left led) for odd layers
|
||||||
|
if (layer & (1<<0)) gp100_led_on();
|
||||||
|
// turns on gp103 (top mid led) for layers 2, 6, ...
|
||||||
|
if (layer & (1<<1)) gp103_led_on();
|
||||||
|
|
||||||
|
return state;
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
# ArpinFidel's layout for xd75
|
||||||
|
|
||||||
|
```
|
||||||
|
QWERTY
|
||||||
|
.--------------------------------------------------------------------------------------------------------------------------------------.
|
||||||
|
| ESC | 1 | 2 | 3 | 4 | 5 | - | ` | = | 6 | 7 | 8 | 9 | 0 | BSPC |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
|
||||||
|
| TAB | Q | W | E | R | T | [ | ] | \ | Y | U | I | O | P | ' |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
|
||||||
|
| CAP LK | A | S | D | F | G | UP | DEL | DOWN | H | J | K | L | ; | ENTER |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
|
||||||
|
| LSHIFT | Z | X | C | V | B | HOME | PG UP | END | N | M | , | . | / | RSHIFT |
|
||||||
|
|--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
|
||||||
|
| LCTRL | FN | LGUI | LALT | SPACE | SPACE | FN | PG DN | FN | BSPC | BSPC | RALT | RGUI | FN | RCTRL |
|
||||||
|
'--------------------------------------------------------------------------------------------------------------------------------------'
|
||||||
|
|
||||||
|
FUNCTION
|
||||||
|
.--------------------------------------------------------------------------------------------------------------------------------------.
|
||||||
|
| F1 | F2 | F3 | F4 | F5 | F6 | | | | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
| MS W U | | MS 2 | MS UP | MS 1 | MS 3 | RGB HD | | RGB HI | [ | ] | UP | | = | \ |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
| MS W D | | MS L | MS DN | MS R | | RGB SD | | RGB SI | - | LEFT | DOWN | RIGHT | | |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
| | | | | | | RGB VD | BL TG | RGB VI | | | | | | |
|
||||||
|
|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
|
||||||
|
| | FN | RGB TG | | MS W L | MS W R | | RESET | | MS 1 | MS 2 | RGB RMD| RGB MD | FN | |
|
||||||
|
'--------------------------------------------------------------------------------------------------------------------------------------'
|
||||||
|
```
|
||||||
|
|
||||||
|
special keys in the middle. hold fn for momentary switch, double tap for toggle. mouse control, arrow keys, led control, and special keys on fn layer.
|
||||||
|
|
||||||
|
TODO :
|
||||||
|
- backlight brightness
|
||||||
|
- dynamic macros
|
@ -0,0 +1,16 @@
|
|||||||
|
# Copyright 2013 Jun Wako <wakojun@gmail.com>
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
BOOTMAGIC_ENABLE = no
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2018 Fredric Silberberg
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "config_common.h"
|
||||||
|
|
||||||
|
/* Use I2C or Serial, not both */
|
||||||
|
|
||||||
|
#define USE_SERIAL
|
||||||
|
|
||||||
|
/* Select hand configuration */
|
||||||
|
//#define MASTER_LEFT
|
||||||
|
#define EE_HANDS
|
||||||
|
|
||||||
|
#undef RGBLED_NUM
|
||||||
|
#define RGBLIGHT_ANIMATIONS
|
||||||
|
#define RGBLED_NUM 16
|
||||||
|
#define RGBLIGHT_HUE_STEP 8
|
||||||
|
#define RGBLIGHT_SAT_STEP 8
|
||||||
|
#define RGBLIGHT_VAL_STEP 8
|
||||||
|
|
||||||
|
#undef TAPPING_TERM
|
||||||
|
#define TAPPING_TERM 150
|
@ -0,0 +1,129 @@
|
|||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
#include "333fred.h"
|
||||||
|
|
||||||
|
extern keymap_config_t keymap_config;
|
||||||
|
|
||||||
|
enum custom_macros {
|
||||||
|
DLEFT,
|
||||||
|
DRIGHT,
|
||||||
|
PSCREEN_APP
|
||||||
|
};
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
|
/* Qwerty
|
||||||
|
* ,-----------------------------------------. .-----------------------------------------.
|
||||||
|
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \ |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | Esc | A | S | D | F | G | | H | J | K | L | ; | " |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | Shift| Z | X | C | V | B | | N | M | , | . | / |SHIFT |
|
||||||
|
* |------+------+------+------+------+------+------..-----+------+------+------+------+------+------|
|
||||||
|
* | Ctrl | F4 | F5 | GUI | Alt | Bksp |Lwr/VM||Enter|Space | NAV | - | = | Alt | Del |
|
||||||
|
* `------------------------------------------------''-----------------------------------------------'
|
||||||
|
*/
|
||||||
|
[BASE] = KEYMAP( \
|
||||||
|
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINUS, \
|
||||||
|
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, \
|
||||||
|
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, \
|
||||||
|
OSM(MOD_LSFT), LCTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT) , \
|
||||||
|
KC_LCTL, KC_F4, KC_F5, KC_LGUI, KC_LALT, KC_BSPC, TD(TD_SYM_VIM), KC_ENT, KC_SPACE, OSL(VIM), KC_MINS, KC_EQL, KC_RALT, KC_DEL \
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Symbols
|
||||||
|
* ,-----------------------------------------. .-----------------------------------------.
|
||||||
|
* | Caps | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | | ! | @ | ( | ) | | | | 7 | 8 | 9 | * | ) | F12 |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | | # | $ | { | } | ` | | 4 | 5 | 6 | + | } | | |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | APscr| % | ^ | [ | ] | ~ | | 1 | 2 | 3 | \ | Vol- | Vol+ |
|
||||||
|
* |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
|
||||||
|
* | Pscr | | RESET| | | GAME | || | 0 | . | = | Prev | Next | Play |
|
||||||
|
* `------------------------------------------------- -------------------------------------------------'
|
||||||
|
*/
|
||||||
|
[SYMB] = KEYMAP( \
|
||||||
|
KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, \
|
||||||
|
_______, KC_EXLM, KC_AT, KC_LPRN, KC_RPRN, KC_PIPE, KC_7, KC_8, KC_9, KC_ASTR, KC_RPRN, KC_F12, \
|
||||||
|
_______, KC_HASH, KC_DLR, KC_LCBR, KC_RCBR, KC_GRV, KC_4, KC_5, KC_6, KC_PLUS, KC_RCBR, KC_PIPE, \
|
||||||
|
M(PSCREEN_APP), KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_1, KC_2, KC_3, KC_BSLS, KC_VOLD, KC_VOLU, \
|
||||||
|
KC_PSCR, _______, RESET, _______, _______, TO(GAME), _______, _______, KC_0, KC_DOT, KC_EQL, KC_MPRV, KC_MNXT, KC_MPLY \
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Vim Movement
|
||||||
|
* ,-----------------------------------------. .-----------------------------------------.
|
||||||
|
* | | | | | | | | | | | | RESET| |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | |RGBSAI|RGBVAI|RGBSAD| LSFT | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | | DLeft|DRight| LCTRL| LGUI | | | Left | Down | Up | Right| | |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | |RGBHUD|RGBVAD|RGBHUI| | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
|
||||||
|
* | | | | | | | || | | | | | | |
|
||||||
|
* `------------------------------------------------..------------------------------------------------'
|
||||||
|
*/
|
||||||
|
[VIM] = KEYMAP( \
|
||||||
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, \
|
||||||
|
_______, RGB_SAI, RGB_VAI, RGB_SAD, KC_LSFT, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
|
_______, M(DLEFT), M(DRIGHT), KC_LCTL, KC_LGUI, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, \
|
||||||
|
_______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
|
||||||
|
),
|
||||||
|
|
||||||
|
/* Gaming mode (Raise)
|
||||||
|
* All one-shot mods are disabled on this layer
|
||||||
|
* ,-----------------------------------------. .-----------------------------------------.
|
||||||
|
* | ESC | | | | | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | | | | | | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | CTRL | | | | F | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||||
|
* | Shift| Z | | | | | | | | | | | GUI |
|
||||||
|
* |------+------+------+------+------+------+------..------+------+------+------+------+------+------|
|
||||||
|
* | Enter| | Lock | Bksp | Alt | Spc | RESET|| | Lower| Left | Up | Down | Right|QWERTY|
|
||||||
|
* `------------------------------------------------..-----------------------------------------------'
|
||||||
|
*/
|
||||||
|
[GAME] = KEYMAP( \
|
||||||
|
KC_ESC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
|
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
|
KC_LCTL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
|
||||||
|
KC_LSFT, KC_Z, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LGUI, \
|
||||||
|
KC_ENT, _______, KC_LOCK, KC_BSPC, KC_F5, KC_LALT, KC_SPC, OSL(SYMB), KC_F6, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, TO(BASE) \
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
void persistant_default_layer_set(uint16_t default_layer) {
|
||||||
|
eeconfig_update_default_layer(default_layer);
|
||||||
|
default_layer_set(default_layer);
|
||||||
|
}
|
||||||
|
|
||||||
|
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
||||||
|
switch(id) {
|
||||||
|
case DLEFT:
|
||||||
|
if (record->event.pressed) { // Windows move desktop left
|
||||||
|
return MACRO(D(LCTL), D(LGUI), T(LEFT), U(LGUI), U(LCTL), END);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case DRIGHT:
|
||||||
|
if (record->event.pressed) { // Windows move desktop right
|
||||||
|
return MACRO(D(LCTL), D(LGUI), T(RIGHT), U(LGUI), U(LCTL), END);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case PSCREEN_APP:
|
||||||
|
if (record->event.pressed) {
|
||||||
|
return MACRO(D(LALT), T(PSCR), U(LALT), END);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return MACRO_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
tap_dance_process_record(keycode);
|
||||||
|
return true;
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
RGBLIGHT_ENABLE = yes
|
||||||
|
BACKLIGHT_ENABLE = no
|
||||||
|
NKRO_ENABLE = yes
|
||||||
|
KEY_LOCK_ENABLE = yes
|
||||||
|
TAP_DANCE_ENABLE = yes
|
||||||
|
CONSOLE_ENABLE = no
|
||||||
|
EXTRAFLAGS += -flto
|
@ -0,0 +1,28 @@
|
|||||||
|
#include "quantum.h"
|
||||||
|
#include "333fred.h"
|
||||||
|
|
||||||
|
void matrix_init_rgb(void) {
|
||||||
|
rgblight_enable_noeeprom();
|
||||||
|
rgblight_sethsv_noeeprom(270, 255, 20);
|
||||||
|
}
|
||||||
|
|
||||||
|
void layer_state_set_rgb(uint32_t state) {
|
||||||
|
switch (biton32(state)) {
|
||||||
|
case BASE:
|
||||||
|
// purple
|
||||||
|
rgblight_sethsv_noeeprom(270, 255, 20);
|
||||||
|
break;
|
||||||
|
case SYMB:
|
||||||
|
// blue
|
||||||
|
rgblight_sethsv_noeeprom(240, 255, 20);
|
||||||
|
break;
|
||||||
|
case VIM:
|
||||||
|
// green
|
||||||
|
rgblight_sethsv_noeeprom(120, 255, 20);
|
||||||
|
break;
|
||||||
|
case GAME:
|
||||||
|
// red
|
||||||
|
rgblight_sethsv_noeeprom(0, 255, 20);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
@ -1,2 +1,5 @@
|
|||||||
|
|
||||||
SRC += 333fred.c
|
SRC += 333fred.c
|
||||||
|
|
||||||
|
ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)
|
||||||
|
SRC += rgb.c
|
||||||
|
endif
|
||||||
|
@ -0,0 +1,362 @@
|
|||||||
|
:10000000BDC00000E3C00000E1C00000DFC0000090
|
||||||
|
:10001000DDC00000DBC00000D9C00000D7C0000078
|
||||||
|
:10002000D5C00000D3C000003AC70000B1C700002F
|
||||||
|
:10003000CDC00000CBC00000C9C00000C7C0000098
|
||||||
|
:10004000C5C00000C3C00000C1C00000BFC00000A8
|
||||||
|
:10005000BDC00000BBC00000B9C000007FC60000EA
|
||||||
|
:10006000B5C00000B3C00000B1C00000AFC00000C8
|
||||||
|
:10007000ADC00000ABC00000A9C00000A7C00000D8
|
||||||
|
:10008000A5C00000A3C00000A1C000009FC00000E8
|
||||||
|
:100090009DC000009BC0000099C0000097C00000F8
|
||||||
|
:1000A00095C0000093C0000091C000000001000056
|
||||||
|
:1000B0005D0112000200001A014300030000160156
|
||||||
|
:1000C0000401030904FC001802030904E4001603F8
|
||||||
|
:1000D000030904D6000C0C03310032003300340055
|
||||||
|
:1000E0003500000016035500530042002000530065
|
||||||
|
:1000F00065007200690061006C0000001803540084
|
||||||
|
:10010000650065006E007300790064007500690089
|
||||||
|
:100110006E006F000000040309040902430002019D
|
||||||
|
:1001200000C0320904000001020201000524001091
|
||||||
|
:10013000010524010001042402060524060001072C
|
||||||
|
:1001400005820308004009040100020A00000007BC
|
||||||
|
:100150000503024000000705840240000012010070
|
||||||
|
:100160000202000020C01683040001010203010006
|
||||||
|
:1001700001C10201803601813600110B11241FBE1E
|
||||||
|
:10018000CFEFDAE0DEBFCDBF11E0A0E0B1E0EAE5FD
|
||||||
|
:10019000F6E102C005900D92A232B107D9F722E034
|
||||||
|
:1001A000A2E2B1E001C01D92A935B207E1F710E06B
|
||||||
|
:1001B000CEEBD0E004C02197FE010E94250BCD3B81
|
||||||
|
:1001C000D107C9F70E942D090C942B0B19CFDC0124
|
||||||
|
:1001D000ED91FC910190F081E02D09948EBD00001D
|
||||||
|
:1001E0000DB407FEFDCF8EB508950F931F930FB684
|
||||||
|
:1001F000F8948091440290914502A0914602B091FA
|
||||||
|
:1002000047020FBE409122015091230160912401C9
|
||||||
|
:10021000709125018C019D01041B150B260B370BDA
|
||||||
|
:100220000832110521053105F0F0809322019093E9
|
||||||
|
:100230002301A0932401B09325012091010180EEB8
|
||||||
|
:10024000820F813A28F090910001919590930001DE
|
||||||
|
:1002500080910001820F80930101529A803810F43E
|
||||||
|
:100260005A9801C05A9A1F910F91089590912601B2
|
||||||
|
:10027000882319F0911103C004C0911102C02E9A75
|
||||||
|
:1002800001C02E98809180008F7D8093800008951A
|
||||||
|
:100290000F931F93CF93DF938B01EC01DD27FE01BA
|
||||||
|
:1002A0009ED46EE170E080E090E098D5FE019DD490
|
||||||
|
:1002B0006EE170E080E090E091D50150110978F78F
|
||||||
|
:1002C000DF91CF911F910F91089540E05BE460E0D2
|
||||||
|
:1002D00070E08FE492E00E94AA0A509A62E070E017
|
||||||
|
:1002E00085E090E0D5DF519A62E070E086E090E032
|
||||||
|
:1002F000CFDF529A62E070E087E090E0C9CF8823B8
|
||||||
|
:1003000011F0589A01C0589884B58F7D84BD089526
|
||||||
|
:10031000CF93DF9300D01F92CDB7DEB72B834A83F4
|
||||||
|
:1003200069835CDF6981862F59DF4A81842F56DF1C
|
||||||
|
:100330002B81822F0F900F900F90DF91CF914ECF96
|
||||||
|
:1003400020913A012093270180913B01809328015D
|
||||||
|
:1003500080913C018093290180913D0180932A0185
|
||||||
|
:1003600080913E0180932B0180913F0180932C016D
|
||||||
|
:100370008091400180932D018091410180932E0155
|
||||||
|
:100380008091420180932F018091440190E0982F49
|
||||||
|
:10039000882730914501830F911D909331018093FF
|
||||||
|
:1003A00030018091460190E0982F882730914701D5
|
||||||
|
:1003B000830F911D90933301809332018091480106
|
||||||
|
:1003C00090E0982F882730914901830F911D9093D9
|
||||||
|
:1003D00035018093340180914A0190E0A0E0B0E0C3
|
||||||
|
:1003E000BA2FA92F982F882730914B01830F911D89
|
||||||
|
:1003F000A11DB11DDC019927882740914C0150E0D7
|
||||||
|
:10040000542F4427052E000C660B770B840F951F85
|
||||||
|
:10041000A61FB71F30914D01830F911DA11DB11D66
|
||||||
|
:100420008093360190933701A0933801B09339013E
|
||||||
|
:1004300081E0203E08F480E080932601089581E069
|
||||||
|
:1004400015DF269A6DD380914202882381F0813096
|
||||||
|
:1004500051F48DB3809340029DB380914102809509
|
||||||
|
:1004600089238DBB04C08FB7F8948093400283E545
|
||||||
|
:100470008CBD1DBC299864E170E080E090E0AED4B2
|
||||||
|
:1004800080E0F4DE80E991E00197F1F781E0EEDEB3
|
||||||
|
:1004900062E370E080E090E0A1D420E040E063E51A
|
||||||
|
:1004A0008CEA36DF81E090E090933D0280933C023D
|
||||||
|
:1004B000089541D322982A982198299880E0D6DE81
|
||||||
|
:1004C00026982E98EDE7F0E080818F7D8083109252
|
||||||
|
:1004D0003D0210923C020895242F880F880F880F48
|
||||||
|
:1004E000462F672F805C14CFCF93DF9300D0CDB71A
|
||||||
|
:1004F000DEB7482F692F80E090E049836A83FFDEF2
|
||||||
|
:1005000020E049816A818CE403DF6EE170E080E0E5
|
||||||
|
:1005100090E064D481E090E00F900F90DF91CF9154
|
||||||
|
:10052000EECE209132013091330180913A029091C8
|
||||||
|
:100530003B022032310511F4807F089520343105CB
|
||||||
|
:1005400011F4807E08952038310511F4807C0895DF
|
||||||
|
:100550002115314009F480780895CF92DF92EF920F
|
||||||
|
:10056000FF920F931F93CF93DF936C01DADF8C011F
|
||||||
|
:10057000C0E0D0E0CC15DD0554F5D3DF7C010817D1
|
||||||
|
:10058000190721F0C801B0DFCCDF7C01FE01E65C79
|
||||||
|
:10059000FE4F60913A0270913B02408180E09CDF07
|
||||||
|
:1005A0002296FE01E75CFE4F60913A0270913B0299
|
||||||
|
:1005B000408181E091DF20913A0230913B022F5F30
|
||||||
|
:1005C0003F4F30933B0220933A028701D3CFC801BB
|
||||||
|
:1005D0008BDF80E1DF91CF911F910F91FF90EF9022
|
||||||
|
:1005E000DF90CF900895462F880F880F880F20E066
|
||||||
|
:1005F000672F805E8DCE0F931F93CF93DF938C0177
|
||||||
|
:10060000C0E0D0E0C017D10704F560913A027091C4
|
||||||
|
:100610003B0280E0E8DF682F8FE492E0D8DD609154
|
||||||
|
:100620003A0270913B0281E0DEDF682F8FE492E0B6
|
||||||
|
:10063000CEDD20913A0230913B022F5F3F4F309345
|
||||||
|
:100640003B0220933A022296DDCF80E1DF91CF91E9
|
||||||
|
:100650001F910F910895EF92FF920F931F93CF93E5
|
||||||
|
:10066000DF937C0100913A0210913B02000F111FB1
|
||||||
|
:10067000E801CE01801B910B8E159F055CF42FEFD6
|
||||||
|
:100680004C2F6D2F80EA44DE682F8FE492E09FDDCF
|
||||||
|
:100690002196EFCF80E1DF91CF911F910F91FF90D5
|
||||||
|
:1006A000EF9008958FE492E0F2D5892BD9F38FE48F
|
||||||
|
:1006B00092E026C608950F931F93CF93DF938C018A
|
||||||
|
:1006C000CAE3D1E0CE018A539140801791071CF410
|
||||||
|
:1006D000E9DF8993F7CFDF91CF911F910F910895B3
|
||||||
|
:1006E000EF92FF920F931F93CF93DF93EC018B0157
|
||||||
|
:1006F000CB01E1DF80E090E002DE8AE3E82E81E0DA
|
||||||
|
:10070000F82E0C0F1D1FC017D10771F0F7012191B2
|
||||||
|
:100710007F014C2F6D2F80ECFBDD6DE270E080E0FF
|
||||||
|
:1007200090E05CD32196EFCF81E090E0E8DD80E1BE
|
||||||
|
:10073000DF91CF911F910F91FF90EF9008950F934C
|
||||||
|
:100740001F93CF93DF938C01C0913A02D0913B026B
|
||||||
|
:1007500080913401909135018017910718F0CC0FEA
|
||||||
|
:10076000DD1F0BC080913E0290913F020196909355
|
||||||
|
:100770003F0280933E0281E10FC00132110540F03B
|
||||||
|
:1007800060E270E0CE01ACDFA09600521109F5CF17
|
||||||
|
:10079000B801CE01A5DF80E1DF91CF911F910F91CC
|
||||||
|
:1007A000089580DF803231F464E18FE492E00FDD60
|
||||||
|
:1007B00060E10AC080913E0290913F0201969093C1
|
||||||
|
:1007C0003F0280933E0265E18FE492E000CDCF933B
|
||||||
|
:1007D000C82F68DF803251F464E18FE492E0F7DCE7
|
||||||
|
:1007E0006C2F8FE492E0F3DC60E10AC080913E025E
|
||||||
|
:1007F00090913F02019690933F0280933E0265E103
|
||||||
|
:100800008FE492E0CF91E3CC813859F020F4803826
|
||||||
|
:1008100061F482E00BC0823831F0833931F483E532
|
||||||
|
:1008200005C081E003C082E101C080E0D0CF84E058
|
||||||
|
:1008300090E041DFEAE3F1E0238142816181808140
|
||||||
|
:1008400067DDC5CFCF93DF93EC0135DF2BDF80323F
|
||||||
|
:1008500041F464E18FE492E0BADCCE017EDE682FE1
|
||||||
|
:100860000AC080913E0290913F02019690933F0210
|
||||||
|
:1008700080933E0265E18FE492E0DF91CF91A7CCB7
|
||||||
|
:10088000CF93DF930FDFC82FD0E0DC2FCC270ADF18
|
||||||
|
:10089000C80FD11D07DF863421F4CE01DF91CF913F
|
||||||
|
:1008A000D1CF8534B9F4CE014ADFC82FFBDE8032C8
|
||||||
|
:1008B00031F464E18FE492E08ADC6C2F0CC080910B
|
||||||
|
:1008C0003E0290913F02019690933F0280933E0238
|
||||||
|
:1008D00065E101C061E18FE492E0DF91CF9177CCD7
|
||||||
|
:1008E0000F931F93CF93DF93DDDEC82FDBDE082F3E
|
||||||
|
:1008F000D9DE182FD7DE803259F080913E029091D8
|
||||||
|
:100900003F02019690933F0280933E0265E115C03D
|
||||||
|
:10091000D0E0DC2FCC27C00FD11D64E18FE492E042
|
||||||
|
:1009200056DC163419F4CE0166DE06C0153419F40F
|
||||||
|
:10093000CE0191DE01C081E1682F8FE492E0DF916A
|
||||||
|
:10094000CF911F910F9143CCADDE803259F0809151
|
||||||
|
:100950003E0290913F02019690933F0280933E02A7
|
||||||
|
:1009600065E120C064E18FE492E031DC20E040E00A
|
||||||
|
:1009700060E080E3CDDC682F8FE492E028DC20E0AB
|
||||||
|
:1009800041E060E080E3C4DC682F8FE492E01FDC8C
|
||||||
|
:1009900020E042E060E080E3BBDC682F8FE492E07F
|
||||||
|
:1009A00016DC60E18FE492E012CC7CDE813509F444
|
||||||
|
:1009B00077C0E0F4813409F460C050F4803309F466
|
||||||
|
:1009C00040C0813309F442C0803209F07AC06FC060
|
||||||
|
:1009D000853409F454C0803509F455C0823409F0D7
|
||||||
|
:1009E00070C084E190E067DEABDC4CC0813609F476
|
||||||
|
:1009F00053C0F0F4863509F452C0803609F44BC078
|
||||||
|
:100A0000853509F05EC04EDE90E090933B02809306
|
||||||
|
:100A10003A0248DE90E0982F882720913A023091E0
|
||||||
|
:100A20003B02820F931F90933B0280933A022AC0AD
|
||||||
|
:100A30008437A1F1853709F439C0843609F041C003
|
||||||
|
:100A40001FCF10923F0210923E021CC02BDE80325C
|
||||||
|
:100A500071F564E18FE492E0BADBE0914F02F0912E
|
||||||
|
:100A600050020280F381E02D47E050E069E071E040
|
||||||
|
:100A70008FE492E0099560E133C014DEC5CE85E0D5
|
||||||
|
:100A800090E019DE8ECE80913C0290913D02892B40
|
||||||
|
:100A9000C9F7D5DCF7CF06DE05DEF4CF21CFC7CE10
|
||||||
|
:100AA00010923F0210923E0204DDECCF4DCF8091B8
|
||||||
|
:100AB0003E0290913F02019690933F0280933E0246
|
||||||
|
:100AC0000EC080913E0290913F02019690933F02AA
|
||||||
|
:100AD00080933E02E7DD803211F462E101C065E1FE
|
||||||
|
:100AE0008FE492E074CB80913C0290913D02892B7F
|
||||||
|
:100AF00011F0589A01C0589884B58F7D84BD8091BB
|
||||||
|
:100B00003E0290913F02892B11F0599A01C05998E9
|
||||||
|
:100B10006CDB8FE492E0BBD3892B09F046CF0895BC
|
||||||
|
:100B2000289A209A8CB580618CBD8CB580648CBD70
|
||||||
|
:100B3000219A229A08958CB58F7B8CBD08951DBA99
|
||||||
|
:100B4000109268001CBC10BE1FBA10927A0010925E
|
||||||
|
:100B50006E0010926F00109271001092720010924D
|
||||||
|
:100B6000C900ECEBF0E0108214B817B81AB81DB841
|
||||||
|
:100B700010BA108215B818B81BB81EB811BA08956B
|
||||||
|
:100B8000F894E1E6F0E020E82083108283E084BD61
|
||||||
|
:100B900085BDEEE6F0E080818160808381E0809316
|
||||||
|
:100BA000800092E090938100809390009093910058
|
||||||
|
:100BB0009093C00094E09093C1008093C200809312
|
||||||
|
:100BC000C3001092C40086E880937A0020937B00D3
|
||||||
|
:100BD00010927E0010927D0040D178940895E93102
|
||||||
|
:100BE00050F4EE0FE450FA4F0994E93120F4EE0F7F
|
||||||
|
:100BF000E25DF94F09940895289A0895299A089575
|
||||||
|
:100C00002A9A08952B9A08952F9A6AC0589A58C024
|
||||||
|
:100C1000599A08955A9A08955B9A0895469A66C01B
|
||||||
|
:100C2000479A6AC05E9A08955F9A6CC02C9A08959C
|
||||||
|
:100C30002D9A4AC02E9A4EC08F9A08958E9A089582
|
||||||
|
:100C40008D9A08958C9A0895899A0895889A08959E
|
||||||
|
:100C50005C9A08955D9A0895769A08952898089563
|
||||||
|
:100C6000299808952A9808952B9808952F9838C0A8
|
||||||
|
:100C7000589826C0599808955A9808955B980895F1
|
||||||
|
:100C8000469834C0479838C05E9808955F983AC037
|
||||||
|
:100C90002C9808952D9818C02E981CC08F980895F0
|
||||||
|
:100CA0008E9808958D9808958C9808958998089540
|
||||||
|
:100CB000889808955C9808955D98089576980895A9
|
||||||
|
:100CC000E4B5EF7DE4BD0895E0918000EF77E09317
|
||||||
|
:100CD00080000895E0918000EF7DE093800008950A
|
||||||
|
:100CE000E0918000E77FE09380000895E09190001C
|
||||||
|
:100CF000EF77E09390000895E091C000EF77E093E4
|
||||||
|
:100D0000C0000895E091C200E77FE093C20008951B
|
||||||
|
:100D1000F89484B7877F84BF80916000806180935E
|
||||||
|
:100D200060001092600080E29EE40197F1F781E09C
|
||||||
|
:100D30008093E00080E28093D80080E69AEE0197ED
|
||||||
|
:100D4000F1F7FDDE0C94003FFFCFF894F8DE80E66B
|
||||||
|
:100D50009AEE0197F1F70C940000FFCF8F938FB7B5
|
||||||
|
:100D60008F93809143028D5F8D37D0F4809343023F
|
||||||
|
:100D7000809144028F5F80934402D8F080914502B5
|
||||||
|
:100D80008F4F80934502A8F0809146028F4F809349
|
||||||
|
:100D9000460278F0809147028F4F8093470209C046
|
||||||
|
:100DA0008D5780934302809144028E5F809344026A
|
||||||
|
:100DB00028F7809148028C5F8093480258F0809118
|
||||||
|
:100DC00049028F4F8093490228F080914A028F4F49
|
||||||
|
:100DD00080934A028F918FBF8F911895CF92DF92A7
|
||||||
|
:100DE000EF92FF926B017C0119D09B01C114D104D9
|
||||||
|
:100DF000E104F10471F012D0621B730B683E734082
|
||||||
|
:100E0000A8F381E0C81AD108E108F10828513C4F45
|
||||||
|
:100E1000EDCFFF90EF90DF90CF9008950FB6F8944C
|
||||||
|
:100E200066B515B2709148028091490290914A02CC
|
||||||
|
:100E30000FBE10FE05C06F3F19F07C5F8F4F9F4FB4
|
||||||
|
:100E400011240024660F001C660F001C70290895F1
|
||||||
|
:100E50008091E80080FFFCCF08958091D80087FF43
|
||||||
|
:100E600002C085FF1BC081E08093D70080EA809399
|
||||||
|
:100E7000D80082E189BD09B400FEFDCF80E98093EE
|
||||||
|
:100E8000D8001092E00010925B0210925A02109269
|
||||||
|
:100E900059021092E1008DE08093E20008951F92C4
|
||||||
|
:100EA0000F920FB60F9211242F933F934F935F939E
|
||||||
|
:100EB0006F937F938F939F93AF93BF93EF93FF9322
|
||||||
|
:100EC0009091E1001092E10093FF11C01092E900AF
|
||||||
|
:100ED00081E08093EB001092EC0082E28093ED00C1
|
||||||
|
:100EE00088E08093F00010925B021092590292FF0A
|
||||||
|
:100EF0001DC080915B028823C9F080914E02882337
|
||||||
|
:100F000059F0815080934E02811106C084E0809395
|
||||||
|
:100F1000E9008AE38093E80080914D02882331F054
|
||||||
|
:100F2000815080934D02811101C0F2DE90FF0CC010
|
||||||
|
:100F300080E18093E20010925B0281E080935A028C
|
||||||
|
:100F400080EA8093D80019BC80915A02882379F0F6
|
||||||
|
:100F500094FF0DC082E189BD09B400FEFDCF80E998
|
||||||
|
:100F60008093D8008DE08093E20010925A02FF91A6
|
||||||
|
:100F7000EF91BF91AF919F918F917F916F915F9111
|
||||||
|
:100F80004F913F912F910F900FBE0F901F9018958A
|
||||||
|
:100F90001F920F920FB60F921124EF92FF920F93B0
|
||||||
|
:100FA0001F932F933F934F935F936F937F938F93F1
|
||||||
|
:100FB0009F93AF93BF93CF93EF93FF931092E9006A
|
||||||
|
:100FC0008091E80083FF30C1C091F1008091F10071
|
||||||
|
:100FD000E090F100F090F1000091F1001091F1002B
|
||||||
|
:100FE0002091F1003091F10092EF9093E80086306B
|
||||||
|
:100FF00009F03FC086E0ECEAF0E0459155914E15CE
|
||||||
|
:101000005F0511F0359615C0459155914017510770
|
||||||
|
:1010100011F033960EC04591559184912F3F3105C3
|
||||||
|
:1010200019F010F02FEF30E0281708F4822F3EEF70
|
||||||
|
:1010300008C0815011F7F8C0891B3093E80088235D
|
||||||
|
:10104000A9F09091E800292F2570D9F392FDEFC007
|
||||||
|
:10105000982F813208F090E2292F222369F3FA01B8
|
||||||
|
:1010600045914093F100AF012150F7CF903249F301
|
||||||
|
:10107000DEC0853049F48EEF8093E800E9DE8E2DE6
|
||||||
|
:1010800080688093E300D3C0893001F5C111CCC0E2
|
||||||
|
:10109000E0925B021092590210924E028EEF809302
|
||||||
|
:1010A000E80081E0EFE6F1E08093E900959190930C
|
||||||
|
:1010B000EB00992331F095919093EC0095919093EA
|
||||||
|
:1010C000ED008F5F853081F78EE1A9C0883049F44B
|
||||||
|
:1010D000C03809F0A9C0BCDE80915B028093F100AA
|
||||||
|
:1010E0007DC0813279F4C13A09F09EC0B1DEE2E000
|
||||||
|
:1010F000F1E087E08E0F90819093F10031968E138E
|
||||||
|
:10110000FACF6CC0803209F047C0C13209F08CC000
|
||||||
|
:101110008091E80082FFFCCFE2E0F1E087E08E0FF3
|
||||||
|
:101120009091F100908331968E13FACF8BEF8093DC
|
||||||
|
:10113000E8008EEF8093E8003091020140910301B6
|
||||||
|
:10114000809104012091050190E0A0E0B0E0DC0175
|
||||||
|
:1011500099278827942B832BB22B86389105A105DC
|
||||||
|
:10116000B10521F48FE080934D0261C0863991056D
|
||||||
|
:10117000A105B10509F05BC084E08093E9009FEF11
|
||||||
|
:101180008091EE00837039F09093E8008091E80040
|
||||||
|
:1011900082FDFCCFF5CFD9DD823231F4C13209F0C6
|
||||||
|
:1011A00043C0E092590204C0833221F4C132E1F518
|
||||||
|
:1011B0004FDE14C0811116C04BDEC23851F40093CB
|
||||||
|
:1011C000E9008091EB0085FB882780F91092E90007
|
||||||
|
:1011D00001C080E08093F1001092F1008EEF8093C7
|
||||||
|
:1011E000E80025C0982F9D7F9130F1F4C230E1F4E2
|
||||||
|
:1011F000EF28D1F40F779FEF900F9630A8F49EEF71
|
||||||
|
:101200009093E8000093E900833071F089E18093C6
|
||||||
|
:10121000EB0081E090E001C0880F0A95EAF7809327
|
||||||
|
:10122000EA001092EA0003C081E28093EB00FF9194
|
||||||
|
:10123000EF91CF91BF91AF919F918F917F916F91DE
|
||||||
|
:101240005F914F913F912F911F910F91FF90EF90E0
|
||||||
|
:101250000F900FBE0F901F90189592DC36D843DC8C
|
||||||
|
:10126000FECFCF93DF931F92CDB7DEB76983DC014A
|
||||||
|
:10127000ED91FC910280F381E02D41E050E0BE0150
|
||||||
|
:101280006F5F7F4F09950F90DF91CF910895FC011B
|
||||||
|
:101290008FB7F89490915B02911102C090E010C05A
|
||||||
|
:1012A00093E09093E9009091F200911109C0209190
|
||||||
|
:1012B000E80022FFF3CF25FDF1CF2BE62093E800D5
|
||||||
|
:1012C0008FBF2085318537FD03C09F3F09F09F5FA9
|
||||||
|
:1012D000892F90E00895CF93DF93EC01888599855D
|
||||||
|
:1012E00097FF09C0E881F9810680F781E02DCE01E2
|
||||||
|
:1012F00009959987888788859985DF91CF91089589
|
||||||
|
:10130000FC012085318537FD07C04FEF5FEF518726
|
||||||
|
:101310004087C901992708959FB7F89480915B028F
|
||||||
|
:10132000882369F083E08093E9002BE68091E80050
|
||||||
|
:1013300085FD09C082FF03C02093E800F7CF9FBF5F
|
||||||
|
:101340008FEF9FEF08958091F1002091E80025FD37
|
||||||
|
:1013500003C02BE62093E8009FBF90E00895DF9242
|
||||||
|
:10136000EF92FF920F931F93CF93DF938C01EB01CA
|
||||||
|
:1013700080915B02882371F07FB7F89484E08093BA
|
||||||
|
:10138000E90080914C02882369F08091E80085FD96
|
||||||
|
:1013900007C07FBF81E0F801828320E030E0D1C048
|
||||||
|
:1013A00010924C0220E030E064E080E4F82EA1EFDF
|
||||||
|
:1013B000B0E09AE3E92EE3E0DE2E4115510509F491
|
||||||
|
:1013C000BFC08091E400815F9091E80095FD16C058
|
||||||
|
:1013D0007FBF9091E400981304C081E080934C0299
|
||||||
|
:1013E00005C090915B02911104C081E0F8018283F5
|
||||||
|
:1013F000A8C07FB7F8946093E900E6CF8091F2002F
|
||||||
|
:101400009F2D981BE92FF0E04E175F0708F4942FEB
|
||||||
|
:10141000E92FF0E04E1B5F0B2E0F3F1FE0E4E91BAE
|
||||||
|
:10142000E03428F4EE0FFF27E85EF54F099480C002
|
||||||
|
:1014300099919C9399919C9399919C9399919C9348
|
||||||
|
:1014400099919C9399919C9399919C9399919C9338
|
||||||
|
:1014500099919C9399919C9399919C9399919C9328
|
||||||
|
:1014600099919C9399919C9399919C9399919C9318
|
||||||
|
:1014700099919C9399919C9399919C9399919C9308
|
||||||
|
:1014800099919C9399919C9399919C9399919C93F8
|
||||||
|
:1014900099919C9399919C9399919C9399919C93E8
|
||||||
|
:1014A00099919C9399919C9399919C9399919C93D8
|
||||||
|
:1014B00099919C9399919C9399919C9399919C93C8
|
||||||
|
:1014C00099919C9399919C9399919C9399919C93B8
|
||||||
|
:1014D00099919C9399919C9399919C9399919C93A8
|
||||||
|
:1014E00099919C9399919C9399919C9399919C9398
|
||||||
|
:1014F00099919C9399919C9399919C9399919C9388
|
||||||
|
:1015000099919C9399919C9399919C9399919C9377
|
||||||
|
:1015100099919C9399919C9399919C9399919C9367
|
||||||
|
:1015200099919C9399919C9399919C9399919C9357
|
||||||
|
:101530008091E80085FFE092E800D0924E023DCF16
|
||||||
|
:101540007FBFC901DF91CF911F910F91FF90EF9065
|
||||||
|
:10155000DF9008952FEF3FEFFC01318720877DDC7E
|
||||||
|
:101560000FB6F8948091440290914502A0914602F2
|
||||||
|
:10157000B09147020FBE9C0180915B02882329F045
|
||||||
|
:1015800068EC70E080E090E029CC80915A028823DA
|
||||||
|
:1015900001F10FB6F8948091440290914502A09118
|
||||||
|
:1015A0004602B09147020FBE40915A02442389F08F
|
||||||
|
:1015B0000FB6F89440914402509145026091460262
|
||||||
|
:1015C000709147020FBE481B590B4B3F510560F30A
|
||||||
|
:1015D00011C00FB6F8948091440290914502A091F9
|
||||||
|
:1015E0004602B09147020FBE821B930B853C994087
|
||||||
|
:1015F00008F4C2CF08959FB7F89480915B028823C6
|
||||||
|
:1016000021F080914E02811102C09FBF089584E0B5
|
||||||
|
:101610008093E9008AE38093E80010924E02F5CFB0
|
||||||
|
:10162000EACFEFE4F2E08AE0DF011D928A95E9F764
|
||||||
|
:1016300088EE93E0A0E0B0E083839483A583B68333
|
||||||
|
:1016400085E191E0918380830895EE0FFF1F05905F
|
||||||
|
:0A165000F491E02D0994F894FFCF07
|
||||||
|
:10165A00088000E10000000008415652204953501A
|
||||||
|
:10166A0000000000003109AF09470980096B091021
|
||||||
|
:02167A000B0063
|
||||||
|
:00000001FF
|
Loading…
Reference in new issue